@itwin/presentation-common 4.0.0-dev.10 → 4.0.0-dev.101

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 (557) hide show
  1. package/CHANGELOG.md +61 -1
  2. package/Ruleset.schema.json +15 -0
  3. package/lib/cjs/assets/locales/en/Presentation.json +19 -0
  4. package/lib/cjs/assets/locales/en-PSEUDO/Presentation.json +19 -0
  5. package/lib/cjs/presentation-common/AsyncTasks.d.ts +22 -22
  6. package/lib/cjs/presentation-common/AsyncTasks.js +38 -38
  7. package/lib/cjs/presentation-common/AsyncTasks.js.map +1 -1
  8. package/lib/cjs/presentation-common/CommonLoggerCategory.d.ts +12 -12
  9. package/lib/cjs/presentation-common/CommonLoggerCategory.js +20 -20
  10. package/lib/cjs/presentation-common/CommonLoggerCategory.js.map +1 -1
  11. package/lib/cjs/presentation-common/Diagnostics.d.ts +125 -125
  12. package/lib/cjs/presentation-common/Diagnostics.d.ts.map +1 -1
  13. package/lib/cjs/presentation-common/Diagnostics.js +72 -72
  14. package/lib/cjs/presentation-common/Diagnostics.js.map +1 -1
  15. package/lib/cjs/presentation-common/EC.d.ts +347 -350
  16. package/lib/cjs/presentation-common/EC.d.ts.map +1 -1
  17. package/lib/cjs/presentation-common/EC.js +290 -290
  18. package/lib/cjs/presentation-common/EC.js.map +1 -1
  19. package/lib/cjs/presentation-common/ElementProperties.d.ts +123 -123
  20. package/lib/cjs/presentation-common/ElementProperties.d.ts.map +1 -1
  21. package/lib/cjs/presentation-common/ElementProperties.js +9 -9
  22. package/lib/cjs/presentation-common/ElementProperties.js.map +1 -1
  23. package/lib/cjs/presentation-common/Error.d.ts +47 -45
  24. package/lib/cjs/presentation-common/Error.d.ts.map +1 -1
  25. package/lib/cjs/presentation-common/Error.js +64 -62
  26. package/lib/cjs/presentation-common/Error.js.map +1 -1
  27. package/lib/cjs/presentation-common/InstanceFilterDefinition.d.ts +93 -93
  28. package/lib/cjs/presentation-common/InstanceFilterDefinition.d.ts.map +1 -1
  29. package/lib/cjs/presentation-common/InstanceFilterDefinition.js +9 -9
  30. package/lib/cjs/presentation-common/InstanceFilterDefinition.js.map +1 -1
  31. package/lib/cjs/presentation-common/KeySet.d.ts +146 -146
  32. package/lib/cjs/presentation-common/KeySet.d.ts.map +1 -1
  33. package/lib/cjs/presentation-common/KeySet.js +428 -428
  34. package/lib/cjs/presentation-common/KeySet.js.map +1 -1
  35. package/lib/cjs/presentation-common/KoqPropertyValueFormatter.d.ts +20 -0
  36. package/lib/cjs/presentation-common/KoqPropertyValueFormatter.d.ts.map +1 -0
  37. package/lib/cjs/presentation-common/KoqPropertyValueFormatter.js +125 -0
  38. package/lib/cjs/presentation-common/KoqPropertyValueFormatter.js.map +1 -0
  39. package/lib/cjs/presentation-common/LabelDefinition.d.ts +93 -87
  40. package/lib/cjs/presentation-common/LabelDefinition.d.ts.map +1 -1
  41. package/lib/cjs/presentation-common/LabelDefinition.js +78 -73
  42. package/lib/cjs/presentation-common/LabelDefinition.js.map +1 -1
  43. package/lib/cjs/presentation-common/LocalizationHelper.d.ts +29 -29
  44. package/lib/cjs/presentation-common/LocalizationHelper.d.ts.map +1 -1
  45. package/lib/cjs/presentation-common/LocalizationHelper.js +113 -110
  46. package/lib/cjs/presentation-common/LocalizationHelper.js.map +1 -1
  47. package/lib/cjs/presentation-common/PresentationIpcInterface.d.ts +27 -40
  48. package/lib/cjs/presentation-common/PresentationIpcInterface.d.ts.map +1 -1
  49. package/lib/cjs/presentation-common/PresentationIpcInterface.js +12 -12
  50. package/lib/cjs/presentation-common/PresentationIpcInterface.js.map +1 -1
  51. package/lib/cjs/presentation-common/PresentationManagerOptions.d.ts +279 -261
  52. package/lib/cjs/presentation-common/PresentationManagerOptions.d.ts.map +1 -1
  53. package/lib/cjs/presentation-common/PresentationManagerOptions.js +23 -23
  54. package/lib/cjs/presentation-common/PresentationManagerOptions.js.map +1 -1
  55. package/lib/cjs/presentation-common/PresentationRpcInterface.d.ts +186 -186
  56. package/lib/cjs/presentation-common/PresentationRpcInterface.d.ts.map +1 -1
  57. package/lib/cjs/presentation-common/PresentationRpcInterface.js +108 -104
  58. package/lib/cjs/presentation-common/PresentationRpcInterface.js.map +1 -1
  59. package/lib/cjs/presentation-common/RegisteredRuleset.d.ts +26 -26
  60. package/lib/cjs/presentation-common/RegisteredRuleset.js +33 -33
  61. package/lib/cjs/presentation-common/RegisteredRuleset.js.map +1 -1
  62. package/lib/cjs/presentation-common/RpcRequestsHandler.d.ts +82 -83
  63. package/lib/cjs/presentation-common/RpcRequestsHandler.d.ts.map +1 -1
  64. package/lib/cjs/presentation-common/RpcRequestsHandler.js +166 -171
  65. package/lib/cjs/presentation-common/RpcRequestsHandler.js.map +1 -1
  66. package/lib/cjs/presentation-common/RulesetVariables.d.ts +171 -171
  67. package/lib/cjs/presentation-common/RulesetVariables.d.ts.map +1 -1
  68. package/lib/cjs/presentation-common/RulesetVariables.js +55 -55
  69. package/lib/cjs/presentation-common/RulesetVariables.js.map +1 -1
  70. package/lib/cjs/presentation-common/RulesetsFactory.d.ts +44 -44
  71. package/lib/cjs/presentation-common/RulesetsFactory.d.ts.map +1 -1
  72. package/lib/cjs/presentation-common/RulesetsFactory.js +223 -223
  73. package/lib/cjs/presentation-common/RulesetsFactory.js.map +1 -1
  74. package/lib/cjs/presentation-common/Update.d.ts +150 -213
  75. package/lib/cjs/presentation-common/Update.d.ts.map +1 -1
  76. package/lib/cjs/presentation-common/Update.js +114 -226
  77. package/lib/cjs/presentation-common/Update.js.map +1 -1
  78. package/lib/cjs/presentation-common/Utils.d.ts +62 -62
  79. package/lib/cjs/presentation-common/Utils.d.ts.map +1 -1
  80. package/lib/cjs/presentation-common/Utils.js +43 -43
  81. package/lib/cjs/presentation-common/Utils.js.map +1 -1
  82. package/lib/cjs/presentation-common/content/Category.d.ts +49 -49
  83. package/lib/cjs/presentation-common/content/Category.js +48 -48
  84. package/lib/cjs/presentation-common/content/Category.js.map +1 -1
  85. package/lib/cjs/presentation-common/content/Content.d.ts +38 -38
  86. package/lib/cjs/presentation-common/content/Content.js +56 -56
  87. package/lib/cjs/presentation-common/content/Content.js.map +1 -1
  88. package/lib/cjs/presentation-common/content/ContentTraverser.d.ts +271 -271
  89. package/lib/cjs/presentation-common/content/ContentTraverser.js +437 -439
  90. package/lib/cjs/presentation-common/content/ContentTraverser.js.map +1 -1
  91. package/lib/cjs/presentation-common/content/Descriptor.d.ts +328 -328
  92. package/lib/cjs/presentation-common/content/Descriptor.js +191 -193
  93. package/lib/cjs/presentation-common/content/Descriptor.js.map +1 -1
  94. package/lib/cjs/presentation-common/content/DisplayTypes.d.ts +21 -21
  95. package/lib/cjs/presentation-common/content/DisplayTypes.js +29 -29
  96. package/lib/cjs/presentation-common/content/DisplayTypes.js.map +1 -1
  97. package/lib/cjs/presentation-common/content/Editor.d.ts +15 -15
  98. package/lib/cjs/presentation-common/content/Editor.js +9 -9
  99. package/lib/cjs/presentation-common/content/Editor.js.map +1 -1
  100. package/lib/cjs/presentation-common/content/Fields.d.ts +298 -301
  101. package/lib/cjs/presentation-common/content/Fields.d.ts.map +1 -1
  102. package/lib/cjs/presentation-common/content/Fields.js +393 -397
  103. package/lib/cjs/presentation-common/content/Fields.js.map +1 -1
  104. package/lib/cjs/presentation-common/content/Item.d.ts +85 -85
  105. package/lib/cjs/presentation-common/content/Item.d.ts.map +1 -1
  106. package/lib/cjs/presentation-common/content/Item.js +84 -84
  107. package/lib/cjs/presentation-common/content/Item.js.map +1 -1
  108. package/lib/cjs/presentation-common/content/Property.d.ts +57 -57
  109. package/lib/cjs/presentation-common/content/Property.d.ts.map +1 -1
  110. package/lib/cjs/presentation-common/content/Property.js +40 -40
  111. package/lib/cjs/presentation-common/content/Property.js.map +1 -1
  112. package/lib/cjs/presentation-common/content/PropertyValueFormatter.d.ts +29 -0
  113. package/lib/cjs/presentation-common/content/PropertyValueFormatter.d.ts.map +1 -0
  114. package/lib/cjs/presentation-common/content/PropertyValueFormatter.js +139 -0
  115. package/lib/cjs/presentation-common/content/PropertyValueFormatter.js.map +1 -0
  116. package/lib/cjs/presentation-common/content/Renderer.d.ts +11 -11
  117. package/lib/cjs/presentation-common/content/Renderer.js +9 -9
  118. package/lib/cjs/presentation-common/content/Renderer.js.map +1 -1
  119. package/lib/cjs/presentation-common/content/TypeDescription.d.ts +72 -72
  120. package/lib/cjs/presentation-common/content/TypeDescription.d.ts.map +1 -1
  121. package/lib/cjs/presentation-common/content/TypeDescription.js +23 -23
  122. package/lib/cjs/presentation-common/content/TypeDescription.js.map +1 -1
  123. package/lib/cjs/presentation-common/content/Value.d.ts +204 -189
  124. package/lib/cjs/presentation-common/content/Value.d.ts.map +1 -1
  125. package/lib/cjs/presentation-common/content/Value.js +281 -273
  126. package/lib/cjs/presentation-common/content/Value.js.map +1 -1
  127. package/lib/cjs/presentation-common/hierarchy/HierarchyLevel.d.ts +37 -37
  128. package/lib/cjs/presentation-common/hierarchy/HierarchyLevel.js +31 -31
  129. package/lib/cjs/presentation-common/hierarchy/HierarchyLevel.js.map +1 -1
  130. package/lib/cjs/presentation-common/hierarchy/Key.d.ts +246 -246
  131. package/lib/cjs/presentation-common/hierarchy/Key.d.ts.map +1 -1
  132. package/lib/cjs/presentation-common/hierarchy/Key.js +121 -121
  133. package/lib/cjs/presentation-common/hierarchy/Key.js.map +1 -1
  134. package/lib/cjs/presentation-common/hierarchy/Node.d.ts +154 -154
  135. package/lib/cjs/presentation-common/hierarchy/Node.d.ts.map +1 -1
  136. package/lib/cjs/presentation-common/hierarchy/Node.js +106 -106
  137. package/lib/cjs/presentation-common/hierarchy/Node.js.map +1 -1
  138. package/lib/cjs/presentation-common/hierarchy/NodePathElement.d.ts +96 -96
  139. package/lib/cjs/presentation-common/hierarchy/NodePathElement.js +122 -122
  140. package/lib/cjs/presentation-common/hierarchy/NodePathElement.js.map +1 -1
  141. package/lib/cjs/presentation-common/rules/ClassSpecifications.d.ts +45 -45
  142. package/lib/cjs/presentation-common/rules/ClassSpecifications.js +9 -9
  143. package/lib/cjs/presentation-common/rules/ClassSpecifications.js.map +1 -1
  144. package/lib/cjs/presentation-common/rules/RelatedInstanceSpecification.d.ts +31 -31
  145. package/lib/cjs/presentation-common/rules/RelatedInstanceSpecification.js +9 -9
  146. package/lib/cjs/presentation-common/rules/RelatedInstanceSpecification.js.map +1 -1
  147. package/lib/cjs/presentation-common/rules/RelationshipDirection.d.ts +13 -13
  148. package/lib/cjs/presentation-common/rules/RelationshipDirection.js +21 -21
  149. package/lib/cjs/presentation-common/rules/RelationshipDirection.js.map +1 -1
  150. package/lib/cjs/presentation-common/rules/RelationshipPathSpecification.d.ts +56 -56
  151. package/lib/cjs/presentation-common/rules/RelationshipPathSpecification.d.ts.map +1 -1
  152. package/lib/cjs/presentation-common/rules/RelationshipPathSpecification.js +9 -9
  153. package/lib/cjs/presentation-common/rules/RelationshipPathSpecification.js.map +1 -1
  154. package/lib/cjs/presentation-common/rules/Rule.d.ts +76 -76
  155. package/lib/cjs/presentation-common/rules/Rule.js +35 -35
  156. package/lib/cjs/presentation-common/rules/Rule.js.map +1 -1
  157. package/lib/cjs/presentation-common/rules/Ruleset.d.ts +65 -65
  158. package/lib/cjs/presentation-common/rules/Ruleset.js +9 -9
  159. package/lib/cjs/presentation-common/rules/Ruleset.js.map +1 -1
  160. package/lib/cjs/presentation-common/rules/SchemasSpecification.d.ts +41 -41
  161. package/lib/cjs/presentation-common/rules/SchemasSpecification.js +9 -9
  162. package/lib/cjs/presentation-common/rules/SchemasSpecification.js.map +1 -1
  163. package/lib/cjs/presentation-common/rules/Variables.d.ts +58 -58
  164. package/lib/cjs/presentation-common/rules/Variables.js +25 -25
  165. package/lib/cjs/presentation-common/rules/Variables.js.map +1 -1
  166. package/lib/cjs/presentation-common/rules/content/ContentInstancesOfSpecificClassesSpecification.d.ts +41 -41
  167. package/lib/cjs/presentation-common/rules/content/ContentInstancesOfSpecificClassesSpecification.js +9 -9
  168. package/lib/cjs/presentation-common/rules/content/ContentInstancesOfSpecificClassesSpecification.js.map +1 -1
  169. package/lib/cjs/presentation-common/rules/content/ContentRelatedInstancesSpecification.d.ts +25 -25
  170. package/lib/cjs/presentation-common/rules/content/ContentRelatedInstancesSpecification.js +9 -9
  171. package/lib/cjs/presentation-common/rules/content/ContentRelatedInstancesSpecification.js.map +1 -1
  172. package/lib/cjs/presentation-common/rules/content/ContentRule.d.ts +30 -30
  173. package/lib/cjs/presentation-common/rules/content/ContentRule.js +9 -9
  174. package/lib/cjs/presentation-common/rules/content/ContentRule.js.map +1 -1
  175. package/lib/cjs/presentation-common/rules/content/ContentSpecification.d.ts +58 -58
  176. package/lib/cjs/presentation-common/rules/content/ContentSpecification.js +20 -20
  177. package/lib/cjs/presentation-common/rules/content/ContentSpecification.js.map +1 -1
  178. package/lib/cjs/presentation-common/rules/content/DefaultPropertyCategoryOverride.d.ts +19 -19
  179. package/lib/cjs/presentation-common/rules/content/DefaultPropertyCategoryOverride.js +9 -9
  180. package/lib/cjs/presentation-common/rules/content/DefaultPropertyCategoryOverride.js.map +1 -1
  181. package/lib/cjs/presentation-common/rules/content/PropertySpecification.d.ts +86 -86
  182. package/lib/cjs/presentation-common/rules/content/PropertySpecification.js +9 -9
  183. package/lib/cjs/presentation-common/rules/content/PropertySpecification.js.map +1 -1
  184. package/lib/cjs/presentation-common/rules/content/SelectedNodeInstancesSpecification.d.ts +28 -28
  185. package/lib/cjs/presentation-common/rules/content/SelectedNodeInstancesSpecification.js +9 -9
  186. package/lib/cjs/presentation-common/rules/content/SelectedNodeInstancesSpecification.js.map +1 -1
  187. package/lib/cjs/presentation-common/rules/content/modifiers/CalculatedPropertiesSpecification.d.ts +25 -25
  188. package/lib/cjs/presentation-common/rules/content/modifiers/CalculatedPropertiesSpecification.js +9 -9
  189. package/lib/cjs/presentation-common/rules/content/modifiers/CalculatedPropertiesSpecification.js.map +1 -1
  190. package/lib/cjs/presentation-common/rules/content/modifiers/ContentModifier.d.ts +64 -57
  191. package/lib/cjs/presentation-common/rules/content/modifiers/ContentModifier.d.ts.map +1 -1
  192. package/lib/cjs/presentation-common/rules/content/modifiers/ContentModifier.js +9 -9
  193. package/lib/cjs/presentation-common/rules/content/modifiers/ContentModifier.js.map +1 -1
  194. package/lib/cjs/presentation-common/rules/content/modifiers/CustomRendererSpecification.d.ts +17 -17
  195. package/lib/cjs/presentation-common/rules/content/modifiers/CustomRendererSpecification.js +9 -9
  196. package/lib/cjs/presentation-common/rules/content/modifiers/CustomRendererSpecification.js.map +1 -1
  197. package/lib/cjs/presentation-common/rules/content/modifiers/PropertyCategorySpecification.d.ts +107 -107
  198. package/lib/cjs/presentation-common/rules/content/modifiers/PropertyCategorySpecification.d.ts.map +1 -1
  199. package/lib/cjs/presentation-common/rules/content/modifiers/PropertyCategorySpecification.js +9 -9
  200. package/lib/cjs/presentation-common/rules/content/modifiers/PropertyCategorySpecification.js.map +1 -1
  201. package/lib/cjs/presentation-common/rules/content/modifiers/PropertyEditorsSpecification.d.ts +108 -108
  202. package/lib/cjs/presentation-common/rules/content/modifiers/PropertyEditorsSpecification.js +21 -21
  203. package/lib/cjs/presentation-common/rules/content/modifiers/PropertyEditorsSpecification.js.map +1 -1
  204. package/lib/cjs/presentation-common/rules/content/modifiers/RelatedPropertiesSpecification.d.ts +96 -96
  205. package/lib/cjs/presentation-common/rules/content/modifiers/RelatedPropertiesSpecification.js +43 -43
  206. package/lib/cjs/presentation-common/rules/content/modifiers/RelatedPropertiesSpecification.js.map +1 -1
  207. package/lib/cjs/presentation-common/rules/customization/CheckBoxRule.d.ts +44 -44
  208. package/lib/cjs/presentation-common/rules/customization/CheckBoxRule.js +9 -9
  209. package/lib/cjs/presentation-common/rules/customization/CheckBoxRule.js.map +1 -1
  210. package/lib/cjs/presentation-common/rules/customization/CustomizationRule.d.ts +36 -36
  211. package/lib/cjs/presentation-common/rules/customization/CustomizationRule.js +9 -9
  212. package/lib/cjs/presentation-common/rules/customization/CustomizationRule.js.map +1 -1
  213. package/lib/cjs/presentation-common/rules/customization/ExtendedDataRule.d.ts +27 -27
  214. package/lib/cjs/presentation-common/rules/customization/ExtendedDataRule.js +9 -9
  215. package/lib/cjs/presentation-common/rules/customization/ExtendedDataRule.js.map +1 -1
  216. package/lib/cjs/presentation-common/rules/customization/GroupingRule.d.ts +207 -207
  217. package/lib/cjs/presentation-common/rules/customization/GroupingRule.js +51 -51
  218. package/lib/cjs/presentation-common/rules/customization/GroupingRule.js.map +1 -1
  219. package/lib/cjs/presentation-common/rules/customization/ImageIdOverride.d.ts +29 -29
  220. package/lib/cjs/presentation-common/rules/customization/ImageIdOverride.js +9 -9
  221. package/lib/cjs/presentation-common/rules/customization/ImageIdOverride.js.map +1 -1
  222. package/lib/cjs/presentation-common/rules/customization/InstanceLabelOverride.d.ts +158 -158
  223. package/lib/cjs/presentation-common/rules/customization/InstanceLabelOverride.d.ts.map +1 -1
  224. package/lib/cjs/presentation-common/rules/customization/InstanceLabelOverride.js +25 -25
  225. package/lib/cjs/presentation-common/rules/customization/InstanceLabelOverride.js.map +1 -1
  226. package/lib/cjs/presentation-common/rules/customization/LabelOverride.d.ts +40 -40
  227. package/lib/cjs/presentation-common/rules/customization/LabelOverride.js +9 -9
  228. package/lib/cjs/presentation-common/rules/customization/LabelOverride.js.map +1 -1
  229. package/lib/cjs/presentation-common/rules/customization/SortingRule.d.ts +58 -58
  230. package/lib/cjs/presentation-common/rules/customization/SortingRule.d.ts.map +1 -1
  231. package/lib/cjs/presentation-common/rules/customization/SortingRule.js +9 -9
  232. package/lib/cjs/presentation-common/rules/customization/SortingRule.js.map +1 -1
  233. package/lib/cjs/presentation-common/rules/customization/StyleOverride.d.ts +48 -48
  234. package/lib/cjs/presentation-common/rules/customization/StyleOverride.js +9 -9
  235. package/lib/cjs/presentation-common/rules/customization/StyleOverride.js.map +1 -1
  236. package/lib/cjs/presentation-common/rules/hierarchy/ChildNodeRule.d.ts +14 -14
  237. package/lib/cjs/presentation-common/rules/hierarchy/ChildNodeRule.js +9 -9
  238. package/lib/cjs/presentation-common/rules/hierarchy/ChildNodeRule.js.map +1 -1
  239. package/lib/cjs/presentation-common/rules/hierarchy/ChildNodeSpecification.d.ts +98 -98
  240. package/lib/cjs/presentation-common/rules/hierarchy/ChildNodeSpecification.d.ts.map +1 -1
  241. package/lib/cjs/presentation-common/rules/hierarchy/ChildNodeSpecification.js +21 -21
  242. package/lib/cjs/presentation-common/rules/hierarchy/ChildNodeSpecification.js.map +1 -1
  243. package/lib/cjs/presentation-common/rules/hierarchy/CustomNodeSpecification.d.ts +31 -31
  244. package/lib/cjs/presentation-common/rules/hierarchy/CustomNodeSpecification.js +9 -9
  245. package/lib/cjs/presentation-common/rules/hierarchy/CustomNodeSpecification.js.map +1 -1
  246. package/lib/cjs/presentation-common/rules/hierarchy/CustomQueryInstanceNodesSpecification.d.ts +79 -79
  247. package/lib/cjs/presentation-common/rules/hierarchy/CustomQueryInstanceNodesSpecification.js +19 -19
  248. package/lib/cjs/presentation-common/rules/hierarchy/CustomQueryInstanceNodesSpecification.js.map +1 -1
  249. package/lib/cjs/presentation-common/rules/hierarchy/InstanceNodesOfSpecificClassesSpecification.d.ts +39 -39
  250. package/lib/cjs/presentation-common/rules/hierarchy/InstanceNodesOfSpecificClassesSpecification.js +9 -9
  251. package/lib/cjs/presentation-common/rules/hierarchy/InstanceNodesOfSpecificClassesSpecification.js.map +1 -1
  252. package/lib/cjs/presentation-common/rules/hierarchy/NavigationRule.d.ts +50 -50
  253. package/lib/cjs/presentation-common/rules/hierarchy/NavigationRule.d.ts.map +1 -1
  254. package/lib/cjs/presentation-common/rules/hierarchy/NavigationRule.js +9 -9
  255. package/lib/cjs/presentation-common/rules/hierarchy/NavigationRule.js.map +1 -1
  256. package/lib/cjs/presentation-common/rules/hierarchy/NodeArtifactsRule.d.ts +27 -27
  257. package/lib/cjs/presentation-common/rules/hierarchy/NodeArtifactsRule.js +9 -9
  258. package/lib/cjs/presentation-common/rules/hierarchy/NodeArtifactsRule.js.map +1 -1
  259. package/lib/cjs/presentation-common/rules/hierarchy/RelatedInstanceNodesSpecification.d.ts +27 -27
  260. package/lib/cjs/presentation-common/rules/hierarchy/RelatedInstanceNodesSpecification.js +9 -9
  261. package/lib/cjs/presentation-common/rules/hierarchy/RelatedInstanceNodesSpecification.js.map +1 -1
  262. package/lib/cjs/presentation-common/rules/hierarchy/RootNodeRule.d.ts +16 -16
  263. package/lib/cjs/presentation-common/rules/hierarchy/RootNodeRule.js +9 -9
  264. package/lib/cjs/presentation-common/rules/hierarchy/RootNodeRule.js.map +1 -1
  265. package/lib/cjs/presentation-common/rules/hierarchy/SubCondition.d.ts +35 -35
  266. package/lib/cjs/presentation-common/rules/hierarchy/SubCondition.js +9 -9
  267. package/lib/cjs/presentation-common/rules/hierarchy/SubCondition.js.map +1 -1
  268. package/lib/cjs/presentation-common/selection/SelectionScope.d.ts +38 -38
  269. package/lib/cjs/presentation-common/selection/SelectionScope.d.ts.map +1 -1
  270. package/lib/cjs/presentation-common/selection/SelectionScope.js +9 -9
  271. package/lib/cjs/presentation-common/selection/SelectionScope.js.map +1 -1
  272. package/lib/cjs/presentation-common.d.ts +114 -112
  273. package/lib/cjs/presentation-common.d.ts.map +1 -1
  274. package/lib/cjs/presentation-common.js +134 -128
  275. package/lib/cjs/presentation-common.js.map +1 -1
  276. package/lib/esm/presentation-common/AsyncTasks.d.ts +22 -22
  277. package/lib/esm/presentation-common/AsyncTasks.js +34 -34
  278. package/lib/esm/presentation-common/AsyncTasks.js.map +1 -1
  279. package/lib/esm/presentation-common/CommonLoggerCategory.d.ts +12 -12
  280. package/lib/esm/presentation-common/CommonLoggerCategory.js +17 -17
  281. package/lib/esm/presentation-common/CommonLoggerCategory.js.map +1 -1
  282. package/lib/esm/presentation-common/Diagnostics.d.ts +125 -125
  283. package/lib/esm/presentation-common/Diagnostics.d.ts.map +1 -1
  284. package/lib/esm/presentation-common/Diagnostics.js +67 -67
  285. package/lib/esm/presentation-common/Diagnostics.js.map +1 -1
  286. package/lib/esm/presentation-common/EC.d.ts +347 -350
  287. package/lib/esm/presentation-common/EC.d.ts.map +1 -1
  288. package/lib/esm/presentation-common/EC.js +287 -287
  289. package/lib/esm/presentation-common/EC.js.map +1 -1
  290. package/lib/esm/presentation-common/ElementProperties.d.ts +123 -123
  291. package/lib/esm/presentation-common/ElementProperties.d.ts.map +1 -1
  292. package/lib/esm/presentation-common/ElementProperties.js +8 -8
  293. package/lib/esm/presentation-common/ElementProperties.js.map +1 -1
  294. package/lib/esm/presentation-common/Error.d.ts +47 -45
  295. package/lib/esm/presentation-common/Error.d.ts.map +1 -1
  296. package/lib/esm/presentation-common/Error.js +60 -58
  297. package/lib/esm/presentation-common/Error.js.map +1 -1
  298. package/lib/esm/presentation-common/InstanceFilterDefinition.d.ts +93 -93
  299. package/lib/esm/presentation-common/InstanceFilterDefinition.d.ts.map +1 -1
  300. package/lib/esm/presentation-common/InstanceFilterDefinition.js +8 -8
  301. package/lib/esm/presentation-common/InstanceFilterDefinition.js.map +1 -1
  302. package/lib/esm/presentation-common/KeySet.d.ts +146 -146
  303. package/lib/esm/presentation-common/KeySet.d.ts.map +1 -1
  304. package/lib/esm/presentation-common/KeySet.js +424 -424
  305. package/lib/esm/presentation-common/KeySet.js.map +1 -1
  306. package/lib/esm/presentation-common/KoqPropertyValueFormatter.d.ts +20 -0
  307. package/lib/esm/presentation-common/KoqPropertyValueFormatter.d.ts.map +1 -0
  308. package/lib/esm/presentation-common/KoqPropertyValueFormatter.js +121 -0
  309. package/lib/esm/presentation-common/KoqPropertyValueFormatter.js.map +1 -0
  310. package/lib/esm/presentation-common/LabelDefinition.d.ts +93 -87
  311. package/lib/esm/presentation-common/LabelDefinition.d.ts.map +1 -1
  312. package/lib/esm/presentation-common/LabelDefinition.js +75 -70
  313. package/lib/esm/presentation-common/LabelDefinition.js.map +1 -1
  314. package/lib/esm/presentation-common/LocalizationHelper.d.ts +29 -29
  315. package/lib/esm/presentation-common/LocalizationHelper.d.ts.map +1 -1
  316. package/lib/esm/presentation-common/LocalizationHelper.js +109 -106
  317. package/lib/esm/presentation-common/LocalizationHelper.js.map +1 -1
  318. package/lib/esm/presentation-common/PresentationIpcInterface.d.ts +27 -40
  319. package/lib/esm/presentation-common/PresentationIpcInterface.d.ts.map +1 -1
  320. package/lib/esm/presentation-common/PresentationIpcInterface.js +9 -9
  321. package/lib/esm/presentation-common/PresentationIpcInterface.js.map +1 -1
  322. package/lib/esm/presentation-common/PresentationManagerOptions.d.ts +279 -261
  323. package/lib/esm/presentation-common/PresentationManagerOptions.d.ts.map +1 -1
  324. package/lib/esm/presentation-common/PresentationManagerOptions.js +18 -18
  325. package/lib/esm/presentation-common/PresentationManagerOptions.js.map +1 -1
  326. package/lib/esm/presentation-common/PresentationRpcInterface.d.ts +186 -186
  327. package/lib/esm/presentation-common/PresentationRpcInterface.d.ts.map +1 -1
  328. package/lib/esm/presentation-common/PresentationRpcInterface.js +105 -100
  329. package/lib/esm/presentation-common/PresentationRpcInterface.js.map +1 -1
  330. package/lib/esm/presentation-common/RegisteredRuleset.d.ts +26 -26
  331. package/lib/esm/presentation-common/RegisteredRuleset.js +29 -29
  332. package/lib/esm/presentation-common/RegisteredRuleset.js.map +1 -1
  333. package/lib/esm/presentation-common/RpcRequestsHandler.d.ts +82 -83
  334. package/lib/esm/presentation-common/RpcRequestsHandler.d.ts.map +1 -1
  335. package/lib/esm/presentation-common/RpcRequestsHandler.js +162 -167
  336. package/lib/esm/presentation-common/RpcRequestsHandler.js.map +1 -1
  337. package/lib/esm/presentation-common/RulesetVariables.d.ts +171 -171
  338. package/lib/esm/presentation-common/RulesetVariables.d.ts.map +1 -1
  339. package/lib/esm/presentation-common/RulesetVariables.js +52 -52
  340. package/lib/esm/presentation-common/RulesetVariables.js.map +1 -1
  341. package/lib/esm/presentation-common/RulesetsFactory.d.ts +44 -44
  342. package/lib/esm/presentation-common/RulesetsFactory.d.ts.map +1 -1
  343. package/lib/esm/presentation-common/RulesetsFactory.js +219 -219
  344. package/lib/esm/presentation-common/RulesetsFactory.js.map +1 -1
  345. package/lib/esm/presentation-common/Update.d.ts +150 -213
  346. package/lib/esm/presentation-common/Update.d.ts.map +1 -1
  347. package/lib/esm/presentation-common/Update.js +111 -223
  348. package/lib/esm/presentation-common/Update.js.map +1 -1
  349. package/lib/esm/presentation-common/Utils.d.ts +62 -62
  350. package/lib/esm/presentation-common/Utils.d.ts.map +1 -1
  351. package/lib/esm/presentation-common/Utils.js +39 -39
  352. package/lib/esm/presentation-common/Utils.js.map +1 -1
  353. package/lib/esm/presentation-common/content/Category.d.ts +49 -49
  354. package/lib/esm/presentation-common/content/Category.js +45 -45
  355. package/lib/esm/presentation-common/content/Category.js.map +1 -1
  356. package/lib/esm/presentation-common/content/Content.d.ts +38 -38
  357. package/lib/esm/presentation-common/content/Content.js +52 -52
  358. package/lib/esm/presentation-common/content/Content.js.map +1 -1
  359. package/lib/esm/presentation-common/content/ContentTraverser.d.ts +271 -271
  360. package/lib/esm/presentation-common/content/ContentTraverser.js +427 -429
  361. package/lib/esm/presentation-common/content/ContentTraverser.js.map +1 -1
  362. package/lib/esm/presentation-common/content/Descriptor.d.ts +328 -328
  363. package/lib/esm/presentation-common/content/Descriptor.js +187 -189
  364. package/lib/esm/presentation-common/content/Descriptor.js.map +1 -1
  365. package/lib/esm/presentation-common/content/DisplayTypes.d.ts +21 -21
  366. package/lib/esm/presentation-common/content/DisplayTypes.js +26 -26
  367. package/lib/esm/presentation-common/content/DisplayTypes.js.map +1 -1
  368. package/lib/esm/presentation-common/content/Editor.d.ts +15 -15
  369. package/lib/esm/presentation-common/content/Editor.js +8 -8
  370. package/lib/esm/presentation-common/content/Editor.js.map +1 -1
  371. package/lib/esm/presentation-common/content/Fields.d.ts +298 -301
  372. package/lib/esm/presentation-common/content/Fields.d.ts.map +1 -1
  373. package/lib/esm/presentation-common/content/Fields.js +386 -390
  374. package/lib/esm/presentation-common/content/Fields.js.map +1 -1
  375. package/lib/esm/presentation-common/content/Item.d.ts +85 -85
  376. package/lib/esm/presentation-common/content/Item.d.ts.map +1 -1
  377. package/lib/esm/presentation-common/content/Item.js +80 -80
  378. package/lib/esm/presentation-common/content/Item.js.map +1 -1
  379. package/lib/esm/presentation-common/content/Property.d.ts +57 -57
  380. package/lib/esm/presentation-common/content/Property.d.ts.map +1 -1
  381. package/lib/esm/presentation-common/content/Property.js +37 -37
  382. package/lib/esm/presentation-common/content/Property.js.map +1 -1
  383. package/lib/esm/presentation-common/content/PropertyValueFormatter.d.ts +29 -0
  384. package/lib/esm/presentation-common/content/PropertyValueFormatter.d.ts.map +1 -0
  385. package/lib/esm/presentation-common/content/PropertyValueFormatter.js +134 -0
  386. package/lib/esm/presentation-common/content/PropertyValueFormatter.js.map +1 -0
  387. package/lib/esm/presentation-common/content/Renderer.d.ts +11 -11
  388. package/lib/esm/presentation-common/content/Renderer.js +8 -8
  389. package/lib/esm/presentation-common/content/Renderer.js.map +1 -1
  390. package/lib/esm/presentation-common/content/TypeDescription.d.ts +72 -72
  391. package/lib/esm/presentation-common/content/TypeDescription.d.ts.map +1 -1
  392. package/lib/esm/presentation-common/content/TypeDescription.js +20 -20
  393. package/lib/esm/presentation-common/content/TypeDescription.js.map +1 -1
  394. package/lib/esm/presentation-common/content/Value.d.ts +204 -189
  395. package/lib/esm/presentation-common/content/Value.d.ts.map +1 -1
  396. package/lib/esm/presentation-common/content/Value.js +278 -270
  397. package/lib/esm/presentation-common/content/Value.js.map +1 -1
  398. package/lib/esm/presentation-common/hierarchy/HierarchyLevel.d.ts +37 -37
  399. package/lib/esm/presentation-common/hierarchy/HierarchyLevel.js +28 -28
  400. package/lib/esm/presentation-common/hierarchy/HierarchyLevel.js.map +1 -1
  401. package/lib/esm/presentation-common/hierarchy/Key.d.ts +246 -246
  402. package/lib/esm/presentation-common/hierarchy/Key.d.ts.map +1 -1
  403. package/lib/esm/presentation-common/hierarchy/Key.js +118 -118
  404. package/lib/esm/presentation-common/hierarchy/Key.js.map +1 -1
  405. package/lib/esm/presentation-common/hierarchy/Node.d.ts +154 -154
  406. package/lib/esm/presentation-common/hierarchy/Node.d.ts.map +1 -1
  407. package/lib/esm/presentation-common/hierarchy/Node.js +103 -103
  408. package/lib/esm/presentation-common/hierarchy/Node.js.map +1 -1
  409. package/lib/esm/presentation-common/hierarchy/NodePathElement.d.ts +96 -96
  410. package/lib/esm/presentation-common/hierarchy/NodePathElement.js +119 -119
  411. package/lib/esm/presentation-common/hierarchy/NodePathElement.js.map +1 -1
  412. package/lib/esm/presentation-common/rules/ClassSpecifications.d.ts +45 -45
  413. package/lib/esm/presentation-common/rules/ClassSpecifications.js +8 -8
  414. package/lib/esm/presentation-common/rules/ClassSpecifications.js.map +1 -1
  415. package/lib/esm/presentation-common/rules/RelatedInstanceSpecification.d.ts +31 -31
  416. package/lib/esm/presentation-common/rules/RelatedInstanceSpecification.js +8 -8
  417. package/lib/esm/presentation-common/rules/RelatedInstanceSpecification.js.map +1 -1
  418. package/lib/esm/presentation-common/rules/RelationshipDirection.d.ts +13 -13
  419. package/lib/esm/presentation-common/rules/RelationshipDirection.js +18 -18
  420. package/lib/esm/presentation-common/rules/RelationshipDirection.js.map +1 -1
  421. package/lib/esm/presentation-common/rules/RelationshipPathSpecification.d.ts +56 -56
  422. package/lib/esm/presentation-common/rules/RelationshipPathSpecification.d.ts.map +1 -1
  423. package/lib/esm/presentation-common/rules/RelationshipPathSpecification.js +8 -8
  424. package/lib/esm/presentation-common/rules/RelationshipPathSpecification.js.map +1 -1
  425. package/lib/esm/presentation-common/rules/Rule.d.ts +76 -76
  426. package/lib/esm/presentation-common/rules/Rule.js +32 -32
  427. package/lib/esm/presentation-common/rules/Rule.js.map +1 -1
  428. package/lib/esm/presentation-common/rules/Ruleset.d.ts +65 -65
  429. package/lib/esm/presentation-common/rules/Ruleset.js +8 -8
  430. package/lib/esm/presentation-common/rules/Ruleset.js.map +1 -1
  431. package/lib/esm/presentation-common/rules/SchemasSpecification.d.ts +41 -41
  432. package/lib/esm/presentation-common/rules/SchemasSpecification.js +8 -8
  433. package/lib/esm/presentation-common/rules/SchemasSpecification.js.map +1 -1
  434. package/lib/esm/presentation-common/rules/Variables.d.ts +58 -58
  435. package/lib/esm/presentation-common/rules/Variables.js +22 -22
  436. package/lib/esm/presentation-common/rules/Variables.js.map +1 -1
  437. package/lib/esm/presentation-common/rules/content/ContentInstancesOfSpecificClassesSpecification.d.ts +41 -41
  438. package/lib/esm/presentation-common/rules/content/ContentInstancesOfSpecificClassesSpecification.js +8 -8
  439. package/lib/esm/presentation-common/rules/content/ContentInstancesOfSpecificClassesSpecification.js.map +1 -1
  440. package/lib/esm/presentation-common/rules/content/ContentRelatedInstancesSpecification.d.ts +25 -25
  441. package/lib/esm/presentation-common/rules/content/ContentRelatedInstancesSpecification.js +8 -8
  442. package/lib/esm/presentation-common/rules/content/ContentRelatedInstancesSpecification.js.map +1 -1
  443. package/lib/esm/presentation-common/rules/content/ContentRule.d.ts +30 -30
  444. package/lib/esm/presentation-common/rules/content/ContentRule.js +8 -8
  445. package/lib/esm/presentation-common/rules/content/ContentRule.js.map +1 -1
  446. package/lib/esm/presentation-common/rules/content/ContentSpecification.d.ts +58 -58
  447. package/lib/esm/presentation-common/rules/content/ContentSpecification.js +17 -17
  448. package/lib/esm/presentation-common/rules/content/ContentSpecification.js.map +1 -1
  449. package/lib/esm/presentation-common/rules/content/DefaultPropertyCategoryOverride.d.ts +19 -19
  450. package/lib/esm/presentation-common/rules/content/DefaultPropertyCategoryOverride.js +8 -8
  451. package/lib/esm/presentation-common/rules/content/DefaultPropertyCategoryOverride.js.map +1 -1
  452. package/lib/esm/presentation-common/rules/content/PropertySpecification.d.ts +86 -86
  453. package/lib/esm/presentation-common/rules/content/PropertySpecification.js +8 -8
  454. package/lib/esm/presentation-common/rules/content/PropertySpecification.js.map +1 -1
  455. package/lib/esm/presentation-common/rules/content/SelectedNodeInstancesSpecification.d.ts +28 -28
  456. package/lib/esm/presentation-common/rules/content/SelectedNodeInstancesSpecification.js +8 -8
  457. package/lib/esm/presentation-common/rules/content/SelectedNodeInstancesSpecification.js.map +1 -1
  458. package/lib/esm/presentation-common/rules/content/modifiers/CalculatedPropertiesSpecification.d.ts +25 -25
  459. package/lib/esm/presentation-common/rules/content/modifiers/CalculatedPropertiesSpecification.js +8 -8
  460. package/lib/esm/presentation-common/rules/content/modifiers/CalculatedPropertiesSpecification.js.map +1 -1
  461. package/lib/esm/presentation-common/rules/content/modifiers/ContentModifier.d.ts +64 -57
  462. package/lib/esm/presentation-common/rules/content/modifiers/ContentModifier.d.ts.map +1 -1
  463. package/lib/esm/presentation-common/rules/content/modifiers/ContentModifier.js +8 -8
  464. package/lib/esm/presentation-common/rules/content/modifiers/ContentModifier.js.map +1 -1
  465. package/lib/esm/presentation-common/rules/content/modifiers/CustomRendererSpecification.d.ts +17 -17
  466. package/lib/esm/presentation-common/rules/content/modifiers/CustomRendererSpecification.js +8 -8
  467. package/lib/esm/presentation-common/rules/content/modifiers/CustomRendererSpecification.js.map +1 -1
  468. package/lib/esm/presentation-common/rules/content/modifiers/PropertyCategorySpecification.d.ts +107 -107
  469. package/lib/esm/presentation-common/rules/content/modifiers/PropertyCategorySpecification.d.ts.map +1 -1
  470. package/lib/esm/presentation-common/rules/content/modifiers/PropertyCategorySpecification.js +8 -8
  471. package/lib/esm/presentation-common/rules/content/modifiers/PropertyCategorySpecification.js.map +1 -1
  472. package/lib/esm/presentation-common/rules/content/modifiers/PropertyEditorsSpecification.d.ts +108 -108
  473. package/lib/esm/presentation-common/rules/content/modifiers/PropertyEditorsSpecification.js +18 -18
  474. package/lib/esm/presentation-common/rules/content/modifiers/PropertyEditorsSpecification.js.map +1 -1
  475. package/lib/esm/presentation-common/rules/content/modifiers/RelatedPropertiesSpecification.d.ts +96 -96
  476. package/lib/esm/presentation-common/rules/content/modifiers/RelatedPropertiesSpecification.js +40 -40
  477. package/lib/esm/presentation-common/rules/content/modifiers/RelatedPropertiesSpecification.js.map +1 -1
  478. package/lib/esm/presentation-common/rules/customization/CheckBoxRule.d.ts +44 -44
  479. package/lib/esm/presentation-common/rules/customization/CheckBoxRule.js +8 -8
  480. package/lib/esm/presentation-common/rules/customization/CheckBoxRule.js.map +1 -1
  481. package/lib/esm/presentation-common/rules/customization/CustomizationRule.d.ts +36 -36
  482. package/lib/esm/presentation-common/rules/customization/CustomizationRule.js +8 -8
  483. package/lib/esm/presentation-common/rules/customization/CustomizationRule.js.map +1 -1
  484. package/lib/esm/presentation-common/rules/customization/ExtendedDataRule.d.ts +27 -27
  485. package/lib/esm/presentation-common/rules/customization/ExtendedDataRule.js +8 -8
  486. package/lib/esm/presentation-common/rules/customization/ExtendedDataRule.js.map +1 -1
  487. package/lib/esm/presentation-common/rules/customization/GroupingRule.d.ts +207 -207
  488. package/lib/esm/presentation-common/rules/customization/GroupingRule.js +48 -48
  489. package/lib/esm/presentation-common/rules/customization/GroupingRule.js.map +1 -1
  490. package/lib/esm/presentation-common/rules/customization/ImageIdOverride.d.ts +29 -29
  491. package/lib/esm/presentation-common/rules/customization/ImageIdOverride.js +8 -8
  492. package/lib/esm/presentation-common/rules/customization/ImageIdOverride.js.map +1 -1
  493. package/lib/esm/presentation-common/rules/customization/InstanceLabelOverride.d.ts +158 -158
  494. package/lib/esm/presentation-common/rules/customization/InstanceLabelOverride.d.ts.map +1 -1
  495. package/lib/esm/presentation-common/rules/customization/InstanceLabelOverride.js +22 -22
  496. package/lib/esm/presentation-common/rules/customization/InstanceLabelOverride.js.map +1 -1
  497. package/lib/esm/presentation-common/rules/customization/LabelOverride.d.ts +40 -40
  498. package/lib/esm/presentation-common/rules/customization/LabelOverride.js +8 -8
  499. package/lib/esm/presentation-common/rules/customization/LabelOverride.js.map +1 -1
  500. package/lib/esm/presentation-common/rules/customization/SortingRule.d.ts +58 -58
  501. package/lib/esm/presentation-common/rules/customization/SortingRule.d.ts.map +1 -1
  502. package/lib/esm/presentation-common/rules/customization/SortingRule.js +8 -8
  503. package/lib/esm/presentation-common/rules/customization/SortingRule.js.map +1 -1
  504. package/lib/esm/presentation-common/rules/customization/StyleOverride.d.ts +48 -48
  505. package/lib/esm/presentation-common/rules/customization/StyleOverride.js +8 -8
  506. package/lib/esm/presentation-common/rules/customization/StyleOverride.js.map +1 -1
  507. package/lib/esm/presentation-common/rules/hierarchy/ChildNodeRule.d.ts +14 -14
  508. package/lib/esm/presentation-common/rules/hierarchy/ChildNodeRule.js +8 -8
  509. package/lib/esm/presentation-common/rules/hierarchy/ChildNodeRule.js.map +1 -1
  510. package/lib/esm/presentation-common/rules/hierarchy/ChildNodeSpecification.d.ts +98 -98
  511. package/lib/esm/presentation-common/rules/hierarchy/ChildNodeSpecification.d.ts.map +1 -1
  512. package/lib/esm/presentation-common/rules/hierarchy/ChildNodeSpecification.js +18 -18
  513. package/lib/esm/presentation-common/rules/hierarchy/ChildNodeSpecification.js.map +1 -1
  514. package/lib/esm/presentation-common/rules/hierarchy/CustomNodeSpecification.d.ts +31 -31
  515. package/lib/esm/presentation-common/rules/hierarchy/CustomNodeSpecification.js +8 -8
  516. package/lib/esm/presentation-common/rules/hierarchy/CustomNodeSpecification.js.map +1 -1
  517. package/lib/esm/presentation-common/rules/hierarchy/CustomQueryInstanceNodesSpecification.d.ts +79 -79
  518. package/lib/esm/presentation-common/rules/hierarchy/CustomQueryInstanceNodesSpecification.js +16 -16
  519. package/lib/esm/presentation-common/rules/hierarchy/CustomQueryInstanceNodesSpecification.js.map +1 -1
  520. package/lib/esm/presentation-common/rules/hierarchy/InstanceNodesOfSpecificClassesSpecification.d.ts +39 -39
  521. package/lib/esm/presentation-common/rules/hierarchy/InstanceNodesOfSpecificClassesSpecification.js +8 -8
  522. package/lib/esm/presentation-common/rules/hierarchy/InstanceNodesOfSpecificClassesSpecification.js.map +1 -1
  523. package/lib/esm/presentation-common/rules/hierarchy/NavigationRule.d.ts +50 -50
  524. package/lib/esm/presentation-common/rules/hierarchy/NavigationRule.d.ts.map +1 -1
  525. package/lib/esm/presentation-common/rules/hierarchy/NavigationRule.js +8 -8
  526. package/lib/esm/presentation-common/rules/hierarchy/NavigationRule.js.map +1 -1
  527. package/lib/esm/presentation-common/rules/hierarchy/NodeArtifactsRule.d.ts +27 -27
  528. package/lib/esm/presentation-common/rules/hierarchy/NodeArtifactsRule.js +8 -8
  529. package/lib/esm/presentation-common/rules/hierarchy/NodeArtifactsRule.js.map +1 -1
  530. package/lib/esm/presentation-common/rules/hierarchy/RelatedInstanceNodesSpecification.d.ts +27 -27
  531. package/lib/esm/presentation-common/rules/hierarchy/RelatedInstanceNodesSpecification.js +8 -8
  532. package/lib/esm/presentation-common/rules/hierarchy/RelatedInstanceNodesSpecification.js.map +1 -1
  533. package/lib/esm/presentation-common/rules/hierarchy/RootNodeRule.d.ts +16 -16
  534. package/lib/esm/presentation-common/rules/hierarchy/RootNodeRule.js +8 -8
  535. package/lib/esm/presentation-common/rules/hierarchy/RootNodeRule.js.map +1 -1
  536. package/lib/esm/presentation-common/rules/hierarchy/SubCondition.d.ts +35 -35
  537. package/lib/esm/presentation-common/rules/hierarchy/SubCondition.js +8 -8
  538. package/lib/esm/presentation-common/rules/hierarchy/SubCondition.js.map +1 -1
  539. package/lib/esm/presentation-common/selection/SelectionScope.d.ts +38 -38
  540. package/lib/esm/presentation-common/selection/SelectionScope.d.ts.map +1 -1
  541. package/lib/esm/presentation-common/selection/SelectionScope.js +8 -8
  542. package/lib/esm/presentation-common/selection/SelectionScope.js.map +1 -1
  543. package/lib/esm/presentation-common.d.ts +114 -112
  544. package/lib/esm/presentation-common.d.ts.map +1 -1
  545. package/lib/esm/presentation-common.js +118 -116
  546. package/lib/esm/presentation-common.js.map +1 -1
  547. package/lib/public/locales/en/Presentation.json +19 -0
  548. package/package.json +19 -18
  549. package/lib/cjs/assets/locales/en/BisCore.json +0 -18
  550. package/lib/cjs/assets/locales/en/ECPresentation.json +0 -9
  551. package/lib/cjs/assets/locales/en/RulesEngine.json +0 -6
  552. package/lib/cjs/assets/locales/en-PSEUDO/BisCore.json +0 -18
  553. package/lib/cjs/assets/locales/en-PSEUDO/ECPresentation.json +0 -9
  554. package/lib/cjs/assets/locales/en-PSEUDO/RulesEngine.json +0 -6
  555. package/lib/public/locales/en/BisCore.json +0 -18
  556. package/lib/public/locales/en/ECPresentation.json +0 -9
  557. package/lib/public/locales/en/RulesEngine.json +0 -6
@@ -1,440 +1,438 @@
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 Content
8
- */
9
- Object.defineProperty(exports, "__esModule", { value: true });
10
- exports.parseCombinedFieldNames = exports.combineFieldNames = exports.FIELD_NAMES_SEPARATOR = exports.addFieldHierarchy = exports.createFieldHierarchies = exports.traverseContentItem = exports.traverseContent = exports.traverseFieldHierarchy = void 0;
11
- const core_bentley_1 = require("@itwin/core-bentley");
12
- const Content_1 = require("./Content");
13
- const Fields_1 = require("./Fields");
14
- const Item_1 = require("./Item");
15
- const TypeDescription_1 = require("./TypeDescription");
16
- const Value_1 = require("./Value");
17
- /**
18
- * An utility for traversing field hierarchy. Stops traversal as soon as `cb` returns `false`.
19
- * @public
20
- */
21
- function traverseFieldHierarchy(hierarchy, cb) {
22
- if (cb(hierarchy))
23
- hierarchy.childFields.forEach((childHierarchy) => traverseFieldHierarchy(childHierarchy, cb));
24
- }
25
- exports.traverseFieldHierarchy = traverseFieldHierarchy;
26
- /**
27
- * An utility to traverse content using provided visitor. Provides means to parse content into different formats,
28
- * for different components.
29
- * @public
30
- */
31
- function traverseContent(visitor, content) {
32
- if (!visitor.startContent({ descriptor: content.descriptor }))
33
- return;
34
- try {
35
- const fieldHierarchies = createFieldHierarchies(content.descriptor.fields);
36
- visitor.processFieldHierarchies({ hierarchies: fieldHierarchies });
37
- content.contentSet.forEach((item) => {
38
- traverseContentItemFields(visitor, fieldHierarchies, item);
39
- });
40
- }
41
- finally {
42
- visitor.finishContent();
43
- }
44
- }
45
- exports.traverseContent = traverseContent;
46
- /**
47
- * An utility for calling [[traverseContent]] when there's only one content item.
48
- * @public
49
- */
50
- function traverseContentItem(visitor, descriptor, item) {
51
- traverseContent(visitor, new Content_1.Content(descriptor, [item]));
52
- }
53
- exports.traverseContentItem = traverseContentItem;
54
- class VisitedCategories {
55
- constructor(_visitor, category) {
56
- this._visitor = _visitor;
57
- const stack = [];
58
- let curr = category;
59
- while (curr) {
60
- stack.push(curr);
61
- curr = curr.parent;
62
- }
63
- stack.reverse();
64
- this._didVisitAllHierarchy = true;
65
- this._visitedCategories = [];
66
- for (curr of stack) {
67
- if (this._visitor.startCategory({ category: curr })) {
68
- this._visitedCategories.push(curr);
69
- }
70
- else {
71
- this._didVisitAllHierarchy = false;
72
- break;
73
- }
74
- }
75
- }
76
- dispose() {
77
- while (this._visitedCategories.pop())
78
- this._visitor.finishCategory();
79
- }
80
- get shouldContinue() { return this._didVisitAllHierarchy; }
81
- }
82
- function traverseContentItemFields(visitor, fieldHierarchies, item) {
83
- if (!visitor.startItem({ item }))
84
- return;
85
- try {
86
- fieldHierarchies.forEach((fieldHierarchy) => {
87
- (0, core_bentley_1.using)(new VisitedCategories(visitor, fieldHierarchy.field.category), (res) => {
88
- if (res.shouldContinue)
89
- traverseContentItemField(visitor, fieldHierarchy, item);
90
- });
91
- });
92
- }
93
- finally {
94
- visitor.finishItem();
95
- }
96
- }
97
- function traverseContentItemField(visitor, fieldHierarchy, item) {
98
- if (!visitor.startField({ hierarchy: fieldHierarchy }))
99
- return;
100
- try {
101
- const rootToThisField = createFieldPath(fieldHierarchy.field);
102
- let parentFieldName;
103
- const pathUpToField = rootToThisField.slice(undefined, -1);
104
- for (let i = 0; i < pathUpToField.length; ++i) {
105
- const parentField = pathUpToField[i];
106
- const nextField = rootToThisField[i + 1];
107
- if (item.isFieldMerged(parentField.name)) {
108
- visitor.processMergedValue({ requestedField: fieldHierarchy.field, mergedField: parentField, parentFieldName });
109
- return;
110
- }
111
- const { emptyNestedItem, convertedItem } = convertNestedContentItemToStructArrayItem(item, parentField, nextField);
112
- if (emptyNestedItem)
113
- return;
114
- item = convertedItem;
115
- parentFieldName = combineFieldNames(parentField.name, parentFieldName);
116
- }
117
- if (item.isFieldMerged(fieldHierarchy.field.name)) {
118
- visitor.processMergedValue({ requestedField: fieldHierarchy.field, mergedField: fieldHierarchy.field, parentFieldName });
119
- return;
120
- }
121
- if (fieldHierarchy.field.isNestedContentField()) {
122
- fieldHierarchy = convertNestedContentFieldHierarchyToStructArrayHierarchy(fieldHierarchy, parentFieldName);
123
- const { emptyNestedItem, convertedItem } = convertNestedContentFieldHierarchyItemToStructArrayItem(item, fieldHierarchy);
124
- if (emptyNestedItem)
125
- return;
126
- item = convertedItem;
127
- }
128
- else if (pathUpToField.length > 0) {
129
- fieldHierarchy = {
130
- ...fieldHierarchy,
131
- field: Object.assign(fieldHierarchy.field.clone(), {
132
- type: {
133
- valueFormat: TypeDescription_1.PropertyValueFormat.Array,
134
- typeName: `${fieldHierarchy.field.type.typeName}[]`,
135
- memberType: fieldHierarchy.field.type,
136
- },
137
- }),
138
- };
139
- }
140
- traverseContentItemFieldValue(visitor, fieldHierarchy, item.mergedFieldNames, fieldHierarchy.field.type, parentFieldName, item.values[fieldHierarchy.field.name], item.displayValues[fieldHierarchy.field.name]);
141
- }
142
- finally {
143
- visitor.finishField();
144
- }
145
- }
146
- function traverseContentItemFieldValue(visitor, fieldHierarchy, mergedFieldNames, valueType, parentFieldName, rawValue, displayValue) {
147
- if (rawValue !== undefined) {
148
- if (valueType.valueFormat === TypeDescription_1.PropertyValueFormat.Array) {
149
- (0, core_bentley_1.assert)(Value_1.Value.isArray(rawValue));
150
- (0, core_bentley_1.assert)(Value_1.DisplayValue.isArray(displayValue));
151
- return traverseContentItemArrayFieldValue(visitor, fieldHierarchy, mergedFieldNames, valueType, parentFieldName, rawValue, displayValue);
152
- }
153
- if (valueType.valueFormat === TypeDescription_1.PropertyValueFormat.Struct) {
154
- (0, core_bentley_1.assert)(Value_1.Value.isMap(rawValue));
155
- (0, core_bentley_1.assert)(Value_1.DisplayValue.isMap(displayValue));
156
- return traverseContentItemStructFieldValue(visitor, fieldHierarchy, mergedFieldNames, valueType, parentFieldName, rawValue, displayValue);
157
- }
158
- }
159
- traverseContentItemPrimitiveFieldValue(visitor, fieldHierarchy, mergedFieldNames, valueType, parentFieldName, rawValue, displayValue);
160
- }
161
- function traverseContentItemArrayFieldValue(visitor, fieldHierarchy, mergedFieldNames, valueType, parentFieldName, rawValues, displayValues) {
162
- (0, core_bentley_1.assert)(rawValues.length === displayValues.length);
163
- (0, core_bentley_1.assert)(valueType.valueFormat === TypeDescription_1.PropertyValueFormat.Array);
164
- if (!visitor.startArray({ hierarchy: fieldHierarchy, valueType, parentFieldName, rawValues, displayValues }))
165
- return;
166
- try {
167
- const itemType = valueType.memberType;
168
- rawValues.forEach((_, i) => {
169
- traverseContentItemFieldValue(visitor, fieldHierarchy, mergedFieldNames, itemType, parentFieldName, rawValues[i], displayValues[i]);
170
- });
171
- }
172
- finally {
173
- visitor.finishArray();
174
- }
175
- }
176
- function traverseContentItemStructFieldValue(visitor, fieldHierarchy, mergedFieldNames, valueType, parentFieldName, rawValues, displayValues) {
177
- (0, core_bentley_1.assert)(valueType.valueFormat === TypeDescription_1.PropertyValueFormat.Struct);
178
- if (!visitor.startStruct({ hierarchy: fieldHierarchy, valueType, parentFieldName, rawValues, displayValues }))
179
- return;
180
- try {
181
- if (fieldHierarchy.field.isNestedContentField())
182
- parentFieldName = combineFieldNames(fieldHierarchy.field.name, parentFieldName);
183
- valueType.members.forEach((memberDescription) => {
184
- let memberField = fieldHierarchy.childFields.find((f) => f.field.name === memberDescription.name);
185
- if (!memberField) {
186
- // Not finding a member field means we're traversing an ECStruct. We still need to carry member information, so we
187
- // create a fake field to represent the member
188
- memberField = {
189
- field: new Fields_1.Field(fieldHierarchy.field.category, memberDescription.name, memberDescription.label, memberDescription.type, fieldHierarchy.field.isReadonly, 0),
190
- childFields: [],
191
- };
192
- }
193
- traverseContentItemFieldValue(visitor, memberField, mergedFieldNames, memberDescription.type, parentFieldName, rawValues[memberDescription.name], displayValues[memberDescription.name]);
194
- });
195
- }
196
- finally {
197
- visitor.finishStruct();
198
- }
199
- }
200
- function traverseContentItemPrimitiveFieldValue(visitor, fieldHierarchy, mergedFieldNames, valueType, parentFieldName, rawValue, displayValue) {
201
- if (-1 !== mergedFieldNames.indexOf(fieldHierarchy.field.name)) {
202
- visitor.processMergedValue({ mergedField: fieldHierarchy.field, requestedField: fieldHierarchy.field, parentFieldName });
203
- return;
204
- }
205
- visitor.processPrimitiveValue({ field: fieldHierarchy.field, valueType, parentFieldName, rawValue, displayValue });
206
- }
207
- /**
208
- * Parses a list of [[Field]] objects into a list of [[FieldHierarchy]].
209
- *
210
- * @param ignoreCategories Enables adding all of the `nestedFields` to parent field's `childFields`
211
- * without considering categories.
212
- *
213
- * @public
214
- */
215
- function createFieldHierarchies(fields, ignoreCategories) {
216
- const hierarchies = new Array();
217
- const visitField = (category, field, parentField) => {
218
- let childFields = [];
219
- if (field.isNestedContentField()) {
220
- // visit all nested fields
221
- childFields = visitFields(field.nestedFields, field);
222
- if (0 === childFields.length)
223
- return undefined;
224
- }
225
- const fieldHierarchy = { field, childFields };
226
- if (category === (parentField === null || parentField === void 0 ? void 0 : parentField.category) || ignoreCategories && parentField) {
227
- // if categories of this field and its parent field match - return the field hierarchy without
228
- // including it as a top level field
229
- return fieldHierarchy;
230
- }
231
- addFieldHierarchy(hierarchies, fieldHierarchy);
232
- return undefined;
233
- };
234
- const visitFields = (visitedFields, parentField) => {
235
- const includedFields = [];
236
- visitedFields.forEach((field) => {
237
- const visitedField = visitField(field.category, field, parentField);
238
- if (visitedField)
239
- includedFields.push(visitedField);
240
- });
241
- return includedFields;
242
- };
243
- visitFields(fields, undefined);
244
- return hierarchies;
245
- }
246
- exports.createFieldHierarchies = createFieldHierarchies;
247
- function findRelatedFields(rootFields, hierarchy) {
248
- // build a list of parent fields in hierarchy
249
- const fields = [];
250
- let currField = hierarchy.field;
251
- while (currField) {
252
- fields.push(currField);
253
- currField = currField.parent;
254
- }
255
- for (let rootIndex = 0; rootIndex < rootFields.length; ++rootIndex) {
256
- const rootFieldHierarchy = rootFields[rootIndex];
257
- if (rootFieldHierarchy.field.category !== hierarchy.field.category) {
258
- // only interested in fields with the same category
259
- continue;
260
- }
261
- let first = true;
262
- currField = rootFieldHierarchy.field;
263
- while (currField) {
264
- const index = fields.findIndex((f) => f.name === currField.name);
265
- if (-1 !== index) {
266
- return {
267
- existing: {
268
- field: currField,
269
- hierarchy: first ? rootFieldHierarchy : undefined,
270
- index: rootIndex,
271
- },
272
- matchingField: fields[index],
273
- };
274
- }
275
- currField = currField.parent;
276
- first = false;
277
- }
278
- }
279
- return undefined;
280
- }
281
- function buildParentHierarchy(hierarchy, parentField) {
282
- // note: parentField is found by walking up the parentship relationship
283
- // from hierarchy.field, so we expect to always find it here
284
- while (hierarchy.field !== parentField) {
285
- const hierarchyParent = hierarchy.field.parent;
286
- (0, core_bentley_1.assert)(hierarchyParent !== undefined);
287
- hierarchy = { field: hierarchyParent, childFields: [hierarchy] };
288
- }
289
- return hierarchy;
290
- }
291
- function mergeHierarchies(lhs, rhs) {
292
- (0, core_bentley_1.assert)(lhs.field.name === rhs.field.name);
293
- const result = {
294
- field: lhs.field.clone(),
295
- childFields: [...lhs.childFields],
296
- };
297
- rhs.childFields.forEach((rhsChildHierarchy) => {
298
- const indexInResult = result.childFields.findIndex((resultHierarchy) => resultHierarchy.field.name === rhsChildHierarchy.field.name);
299
- if (indexInResult !== -1)
300
- result.childFields[indexInResult] = mergeHierarchies(result.childFields[indexInResult], rhsChildHierarchy);
301
- else
302
- result.childFields.push(rhsChildHierarchy);
303
- });
304
- return result;
305
- }
306
- /**
307
- * Adds a field hierarchy into root field hierarchies list. *
308
- * @public
309
- */
310
- function addFieldHierarchy(rootHierarchies, hierarchy) {
311
- var _a;
312
- const match = findRelatedFields(rootHierarchies, hierarchy);
313
- if (!match) {
314
- rootHierarchies.push(hierarchy);
315
- return;
316
- }
317
- const targetHierarchy = rootHierarchies[match.existing.index];
318
- const existingHierarchy = (_a = match.existing.hierarchy) !== null && _a !== void 0 ? _a : buildParentHierarchy(targetHierarchy, match.existing.field);
319
- const insertHierarchy = buildParentHierarchy(hierarchy, match.matchingField);
320
- const mergedHierarchy = mergeHierarchies(existingHierarchy, insertHierarchy);
321
- mergedHierarchy.field.category = hierarchy.field.category;
322
- rootHierarchies[match.existing.index] = mergedHierarchy;
323
- }
324
- exports.addFieldHierarchy = addFieldHierarchy;
325
- function createFieldPath(field) {
326
- const path = [field];
327
- let currField = field;
328
- while (currField.parent) {
329
- currField = currField.parent;
330
- path.push(currField);
331
- }
332
- path.reverse();
333
- return path;
334
- }
335
- /** @internal */
336
- exports.FIELD_NAMES_SEPARATOR = "$";
337
- /**
338
- * Combines given field names in a way that allows them to be parsed back into a list of individual names using the [[parseCombinedFieldNames]] function.
339
- * @public
340
- */
341
- function combineFieldNames(fieldName, parentFieldName) {
342
- return parentFieldName ? `${parentFieldName}${exports.FIELD_NAMES_SEPARATOR}${fieldName}` : fieldName;
343
- }
344
- exports.combineFieldNames = combineFieldNames;
345
- /**
346
- * Parses given combined field names string, constructed using [[combineFieldNames]], into a list of individual field names.
347
- * @public
348
- */
349
- function parseCombinedFieldNames(combinedName) {
350
- return combinedName ? combinedName.split(exports.FIELD_NAMES_SEPARATOR) : [];
351
- }
352
- exports.parseCombinedFieldNames = parseCombinedFieldNames;
353
- function convertNestedContentItemToStructArrayItem(item, field, nextField) {
354
- var _a;
355
- const value = (_a = item.values[field.name]) !== null && _a !== void 0 ? _a : [];
356
- (0, core_bentley_1.assert)(Value_1.Value.isNestedContent(value));
357
- if (value.length === 0)
358
- return { emptyNestedItem: true, convertedItem: item };
359
- const nextFieldValues = { raw: [], display: [] };
360
- value.forEach((ncv) => {
361
- const nextRawValue = ncv.values[nextField.name];
362
- const nextDisplayValue = ncv.displayValues[nextField.name];
363
- if (nextField.isNestedContentField()) {
364
- if (nextRawValue) {
365
- (0, core_bentley_1.assert)(Value_1.Value.isNestedContent(nextRawValue));
366
- nextFieldValues.raw.push(...nextRawValue);
367
- }
368
- }
369
- else {
370
- nextFieldValues.raw.push(nextRawValue);
371
- nextFieldValues.display.push(nextDisplayValue);
372
- }
373
- });
374
- const convertedItem = new Item_1.Item(item.primaryKeys, item.label, item.imageId, item.classInfo, { [nextField.name]: nextFieldValues.raw }, { [nextField.name]: nextFieldValues.display }, item.mergedFieldNames, item.extendedData); // eslint-disable-line deprecation/deprecation
375
- return { emptyNestedItem: false, convertedItem };
376
- }
377
- function convertNestedContentFieldHierarchyToStructArrayHierarchy(fieldHierarchy, parentFieldName) {
378
- const fieldName = fieldHierarchy.field.name;
379
- const convertedChildFieldHierarchies = fieldHierarchy.childFields.map((child) => {
380
- if (child.field.isNestedContentField())
381
- return convertNestedContentFieldHierarchyToStructArrayHierarchy(child, combineFieldNames(fieldName, parentFieldName));
382
- return child;
383
- });
384
- const convertedFieldHierarchy = {
385
- field: Object.assign(fieldHierarchy.field.clone(), {
386
- type: {
387
- valueFormat: TypeDescription_1.PropertyValueFormat.Array,
388
- typeName: `${fieldHierarchy.field.type.typeName}[]`,
389
- memberType: {
390
- valueFormat: TypeDescription_1.PropertyValueFormat.Struct,
391
- typeName: fieldHierarchy.field.type.typeName,
392
- members: convertedChildFieldHierarchies.map((member) => ({
393
- name: member.field.name,
394
- label: member.field.label,
395
- type: member.field.type,
396
- })),
397
- },
398
- },
399
- }),
400
- childFields: convertedChildFieldHierarchies,
401
- };
402
- return convertedFieldHierarchy;
403
- }
404
- function convertNestedContentValuesToStructArrayValuesRecursive(fieldHierarchy, ncvs) {
405
- const result = { raw: [], display: [], mergedFieldNames: [] };
406
- ncvs.forEach((ncv) => {
407
- const values = { ...ncv.values };
408
- const displayValues = { ...ncv.displayValues };
409
- const mergedFieldNames = [...ncv.mergedFieldNames];
410
- fieldHierarchy.childFields.forEach((childFieldHierarchy) => {
411
- const childFieldName = childFieldHierarchy.field.name;
412
- if (-1 !== ncv.mergedFieldNames.indexOf(childFieldName)) {
413
- return;
414
- }
415
- if (childFieldHierarchy.field.isNestedContentField()) {
416
- const value = values[childFieldName];
417
- (0, core_bentley_1.assert)(Value_1.Value.isNestedContent(value));
418
- const convertedValues = convertNestedContentValuesToStructArrayValuesRecursive(childFieldHierarchy, value);
419
- values[childFieldName] = convertedValues.raw;
420
- displayValues[childFieldName] = convertedValues.display;
421
- mergedFieldNames.push(...convertedValues.mergedFieldNames);
422
- }
423
- });
424
- result.raw.push(values);
425
- result.display.push(displayValues);
426
- result.mergedFieldNames.push(...mergedFieldNames);
427
- });
428
- return result;
429
- }
430
- function convertNestedContentFieldHierarchyItemToStructArrayItem(item, fieldHierarchy) {
431
- const fieldName = fieldHierarchy.field.name;
432
- const rawValue = item.values[fieldName];
433
- (0, core_bentley_1.assert)(Value_1.Value.isNestedContent(rawValue));
434
- if (rawValue.length === 0)
435
- return { emptyNestedItem: true, convertedItem: item };
436
- const converted = convertNestedContentValuesToStructArrayValuesRecursive(fieldHierarchy, rawValue);
437
- const convertedItem = new Item_1.Item(item.primaryKeys, item.label, item.imageId, item.classInfo, { [fieldName]: converted.raw }, { [fieldName]: converted.display }, converted.mergedFieldNames, item.extendedData); // eslint-disable-line deprecation/deprecation
438
- return { emptyNestedItem: false, convertedItem };
439
- }
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 Content
8
+ */
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ exports.parseCombinedFieldNames = exports.combineFieldNames = exports.FIELD_NAMES_SEPARATOR = exports.addFieldHierarchy = exports.createFieldHierarchies = exports.traverseContentItem = exports.traverseContent = exports.traverseFieldHierarchy = void 0;
11
+ const core_bentley_1 = require("@itwin/core-bentley");
12
+ const Content_1 = require("./Content");
13
+ const Fields_1 = require("./Fields");
14
+ const Item_1 = require("./Item");
15
+ const TypeDescription_1 = require("./TypeDescription");
16
+ const Value_1 = require("./Value");
17
+ /**
18
+ * An utility for traversing field hierarchy. Stops traversal as soon as `cb` returns `false`.
19
+ * @public
20
+ */
21
+ function traverseFieldHierarchy(hierarchy, cb) {
22
+ if (cb(hierarchy))
23
+ hierarchy.childFields.forEach((childHierarchy) => traverseFieldHierarchy(childHierarchy, cb));
24
+ }
25
+ exports.traverseFieldHierarchy = traverseFieldHierarchy;
26
+ /**
27
+ * An utility to traverse content using provided visitor. Provides means to parse content into different formats,
28
+ * for different components.
29
+ * @public
30
+ */
31
+ function traverseContent(visitor, content) {
32
+ if (!visitor.startContent({ descriptor: content.descriptor }))
33
+ return;
34
+ try {
35
+ const fieldHierarchies = createFieldHierarchies(content.descriptor.fields);
36
+ visitor.processFieldHierarchies({ hierarchies: fieldHierarchies });
37
+ content.contentSet.forEach((item) => {
38
+ traverseContentItemFields(visitor, fieldHierarchies, item);
39
+ });
40
+ }
41
+ finally {
42
+ visitor.finishContent();
43
+ }
44
+ }
45
+ exports.traverseContent = traverseContent;
46
+ /**
47
+ * An utility for calling [[traverseContent]] when there's only one content item.
48
+ * @public
49
+ */
50
+ function traverseContentItem(visitor, descriptor, item) {
51
+ traverseContent(visitor, new Content_1.Content(descriptor, [item]));
52
+ }
53
+ exports.traverseContentItem = traverseContentItem;
54
+ class VisitedCategories {
55
+ constructor(_visitor, category) {
56
+ this._visitor = _visitor;
57
+ const stack = [];
58
+ let curr = category;
59
+ while (curr) {
60
+ stack.push(curr);
61
+ curr = curr.parent;
62
+ }
63
+ stack.reverse();
64
+ this._didVisitAllHierarchy = true;
65
+ this._visitedCategories = [];
66
+ for (curr of stack) {
67
+ if (this._visitor.startCategory({ category: curr })) {
68
+ this._visitedCategories.push(curr);
69
+ }
70
+ else {
71
+ this._didVisitAllHierarchy = false;
72
+ break;
73
+ }
74
+ }
75
+ }
76
+ dispose() {
77
+ while (this._visitedCategories.pop())
78
+ this._visitor.finishCategory();
79
+ }
80
+ get shouldContinue() { return this._didVisitAllHierarchy; }
81
+ }
82
+ function traverseContentItemFields(visitor, fieldHierarchies, item) {
83
+ if (!visitor.startItem({ item }))
84
+ return;
85
+ try {
86
+ fieldHierarchies.forEach((fieldHierarchy) => {
87
+ (0, core_bentley_1.using)(new VisitedCategories(visitor, fieldHierarchy.field.category), (res) => {
88
+ if (res.shouldContinue)
89
+ traverseContentItemField(visitor, fieldHierarchy, item);
90
+ });
91
+ });
92
+ }
93
+ finally {
94
+ visitor.finishItem();
95
+ }
96
+ }
97
+ function traverseContentItemField(visitor, fieldHierarchy, item) {
98
+ if (!visitor.startField({ hierarchy: fieldHierarchy }))
99
+ return;
100
+ try {
101
+ const rootToThisField = createFieldPath(fieldHierarchy.field);
102
+ let parentFieldName;
103
+ const pathUpToField = rootToThisField.slice(undefined, -1);
104
+ for (let i = 0; i < pathUpToField.length; ++i) {
105
+ const parentField = pathUpToField[i];
106
+ const nextField = rootToThisField[i + 1];
107
+ if (item.isFieldMerged(parentField.name)) {
108
+ visitor.processMergedValue({ requestedField: fieldHierarchy.field, mergedField: parentField, parentFieldName });
109
+ return;
110
+ }
111
+ const { emptyNestedItem, convertedItem } = convertNestedContentItemToStructArrayItem(item, parentField, nextField);
112
+ if (emptyNestedItem)
113
+ return;
114
+ item = convertedItem;
115
+ parentFieldName = combineFieldNames(parentField.name, parentFieldName);
116
+ }
117
+ if (item.isFieldMerged(fieldHierarchy.field.name)) {
118
+ visitor.processMergedValue({ requestedField: fieldHierarchy.field, mergedField: fieldHierarchy.field, parentFieldName });
119
+ return;
120
+ }
121
+ if (fieldHierarchy.field.isNestedContentField()) {
122
+ fieldHierarchy = convertNestedContentFieldHierarchyToStructArrayHierarchy(fieldHierarchy, parentFieldName);
123
+ const { emptyNestedItem, convertedItem } = convertNestedContentFieldHierarchyItemToStructArrayItem(item, fieldHierarchy);
124
+ if (emptyNestedItem)
125
+ return;
126
+ item = convertedItem;
127
+ }
128
+ else if (pathUpToField.length > 0) {
129
+ fieldHierarchy = {
130
+ ...fieldHierarchy,
131
+ field: Object.assign(fieldHierarchy.field.clone(), {
132
+ type: {
133
+ valueFormat: TypeDescription_1.PropertyValueFormat.Array,
134
+ typeName: `${fieldHierarchy.field.type.typeName}[]`,
135
+ memberType: fieldHierarchy.field.type,
136
+ },
137
+ }),
138
+ };
139
+ }
140
+ traverseContentItemFieldValue(visitor, fieldHierarchy, item.mergedFieldNames, fieldHierarchy.field.type, parentFieldName, item.values[fieldHierarchy.field.name], item.displayValues[fieldHierarchy.field.name]);
141
+ }
142
+ finally {
143
+ visitor.finishField();
144
+ }
145
+ }
146
+ function traverseContentItemFieldValue(visitor, fieldHierarchy, mergedFieldNames, valueType, parentFieldName, rawValue, displayValue) {
147
+ if (rawValue !== undefined) {
148
+ if (valueType.valueFormat === TypeDescription_1.PropertyValueFormat.Array) {
149
+ (0, core_bentley_1.assert)(Value_1.Value.isArray(rawValue));
150
+ (0, core_bentley_1.assert)(Value_1.DisplayValue.isArray(displayValue));
151
+ return traverseContentItemArrayFieldValue(visitor, fieldHierarchy, mergedFieldNames, valueType, parentFieldName, rawValue, displayValue);
152
+ }
153
+ if (valueType.valueFormat === TypeDescription_1.PropertyValueFormat.Struct) {
154
+ (0, core_bentley_1.assert)(Value_1.Value.isMap(rawValue));
155
+ (0, core_bentley_1.assert)(Value_1.DisplayValue.isMap(displayValue));
156
+ return traverseContentItemStructFieldValue(visitor, fieldHierarchy, mergedFieldNames, valueType, parentFieldName, rawValue, displayValue);
157
+ }
158
+ }
159
+ traverseContentItemPrimitiveFieldValue(visitor, fieldHierarchy, mergedFieldNames, valueType, parentFieldName, rawValue, displayValue);
160
+ }
161
+ function traverseContentItemArrayFieldValue(visitor, fieldHierarchy, mergedFieldNames, valueType, parentFieldName, rawValues, displayValues) {
162
+ (0, core_bentley_1.assert)(rawValues.length === displayValues.length);
163
+ (0, core_bentley_1.assert)(valueType.valueFormat === TypeDescription_1.PropertyValueFormat.Array);
164
+ if (!visitor.startArray({ hierarchy: fieldHierarchy, valueType, parentFieldName, rawValues, displayValues }))
165
+ return;
166
+ try {
167
+ const itemType = valueType.memberType;
168
+ rawValues.forEach((_, i) => {
169
+ traverseContentItemFieldValue(visitor, fieldHierarchy, mergedFieldNames, itemType, parentFieldName, rawValues[i], displayValues[i]);
170
+ });
171
+ }
172
+ finally {
173
+ visitor.finishArray();
174
+ }
175
+ }
176
+ function traverseContentItemStructFieldValue(visitor, fieldHierarchy, mergedFieldNames, valueType, parentFieldName, rawValues, displayValues) {
177
+ (0, core_bentley_1.assert)(valueType.valueFormat === TypeDescription_1.PropertyValueFormat.Struct);
178
+ if (!visitor.startStruct({ hierarchy: fieldHierarchy, valueType, parentFieldName, rawValues, displayValues }))
179
+ return;
180
+ try {
181
+ if (fieldHierarchy.field.isNestedContentField())
182
+ parentFieldName = combineFieldNames(fieldHierarchy.field.name, parentFieldName);
183
+ valueType.members.forEach((memberDescription) => {
184
+ let memberField = fieldHierarchy.childFields.find((f) => f.field.name === memberDescription.name);
185
+ if (!memberField) {
186
+ // Not finding a member field means we're traversing an ECStruct. We still need to carry member information, so we
187
+ // create a fake field to represent the member
188
+ memberField = {
189
+ field: new Fields_1.Field(fieldHierarchy.field.category, memberDescription.name, memberDescription.label, memberDescription.type, fieldHierarchy.field.isReadonly, 0),
190
+ childFields: [],
191
+ };
192
+ }
193
+ traverseContentItemFieldValue(visitor, memberField, mergedFieldNames, memberDescription.type, parentFieldName, rawValues[memberDescription.name], displayValues[memberDescription.name]);
194
+ });
195
+ }
196
+ finally {
197
+ visitor.finishStruct();
198
+ }
199
+ }
200
+ function traverseContentItemPrimitiveFieldValue(visitor, fieldHierarchy, mergedFieldNames, valueType, parentFieldName, rawValue, displayValue) {
201
+ if (-1 !== mergedFieldNames.indexOf(fieldHierarchy.field.name)) {
202
+ visitor.processMergedValue({ mergedField: fieldHierarchy.field, requestedField: fieldHierarchy.field, parentFieldName });
203
+ return;
204
+ }
205
+ visitor.processPrimitiveValue({ field: fieldHierarchy.field, valueType, parentFieldName, rawValue, displayValue });
206
+ }
207
+ /**
208
+ * Parses a list of [[Field]] objects into a list of [[FieldHierarchy]].
209
+ *
210
+ * @param ignoreCategories Enables adding all of the `nestedFields` to parent field's `childFields`
211
+ * without considering categories.
212
+ *
213
+ * @public
214
+ */
215
+ function createFieldHierarchies(fields, ignoreCategories) {
216
+ const hierarchies = new Array();
217
+ const visitField = (category, field, parentField) => {
218
+ let childFields = [];
219
+ if (field.isNestedContentField()) {
220
+ // visit all nested fields
221
+ childFields = visitFields(field.nestedFields, field);
222
+ if (0 === childFields.length)
223
+ return undefined;
224
+ }
225
+ const fieldHierarchy = { field, childFields };
226
+ if (category === parentField?.category || ignoreCategories && parentField) {
227
+ // if categories of this field and its parent field match - return the field hierarchy without
228
+ // including it as a top level field
229
+ return fieldHierarchy;
230
+ }
231
+ addFieldHierarchy(hierarchies, fieldHierarchy);
232
+ return undefined;
233
+ };
234
+ const visitFields = (visitedFields, parentField) => {
235
+ const includedFields = [];
236
+ visitedFields.forEach((field) => {
237
+ const visitedField = visitField(field.category, field, parentField);
238
+ if (visitedField)
239
+ includedFields.push(visitedField);
240
+ });
241
+ return includedFields;
242
+ };
243
+ visitFields(fields, undefined);
244
+ return hierarchies;
245
+ }
246
+ exports.createFieldHierarchies = createFieldHierarchies;
247
+ function findRelatedFields(rootFields, hierarchy) {
248
+ // build a list of parent fields in hierarchy
249
+ const fields = [];
250
+ let currField = hierarchy.field;
251
+ while (currField) {
252
+ fields.push(currField);
253
+ currField = currField.parent;
254
+ }
255
+ for (let rootIndex = 0; rootIndex < rootFields.length; ++rootIndex) {
256
+ const rootFieldHierarchy = rootFields[rootIndex];
257
+ if (rootFieldHierarchy.field.category !== hierarchy.field.category) {
258
+ // only interested in fields with the same category
259
+ continue;
260
+ }
261
+ let first = true;
262
+ currField = rootFieldHierarchy.field;
263
+ while (currField) {
264
+ const index = fields.findIndex((f) => f.name === currField.name);
265
+ if (-1 !== index) {
266
+ return {
267
+ existing: {
268
+ field: currField,
269
+ hierarchy: first ? rootFieldHierarchy : undefined,
270
+ index: rootIndex,
271
+ },
272
+ matchingField: fields[index],
273
+ };
274
+ }
275
+ currField = currField.parent;
276
+ first = false;
277
+ }
278
+ }
279
+ return undefined;
280
+ }
281
+ function buildParentHierarchy(hierarchy, parentField) {
282
+ // note: parentField is found by walking up the parentship relationship
283
+ // from hierarchy.field, so we expect to always find it here
284
+ while (hierarchy.field !== parentField) {
285
+ const hierarchyParent = hierarchy.field.parent;
286
+ (0, core_bentley_1.assert)(hierarchyParent !== undefined);
287
+ hierarchy = { field: hierarchyParent, childFields: [hierarchy] };
288
+ }
289
+ return hierarchy;
290
+ }
291
+ function mergeHierarchies(lhs, rhs) {
292
+ (0, core_bentley_1.assert)(lhs.field.name === rhs.field.name);
293
+ const result = {
294
+ field: lhs.field.clone(),
295
+ childFields: [...lhs.childFields],
296
+ };
297
+ rhs.childFields.forEach((rhsChildHierarchy) => {
298
+ const indexInResult = result.childFields.findIndex((resultHierarchy) => resultHierarchy.field.name === rhsChildHierarchy.field.name);
299
+ if (indexInResult !== -1)
300
+ result.childFields[indexInResult] = mergeHierarchies(result.childFields[indexInResult], rhsChildHierarchy);
301
+ else
302
+ result.childFields.push(rhsChildHierarchy);
303
+ });
304
+ return result;
305
+ }
306
+ /**
307
+ * Adds a field hierarchy into root field hierarchies list. *
308
+ * @public
309
+ */
310
+ function addFieldHierarchy(rootHierarchies, hierarchy) {
311
+ const match = findRelatedFields(rootHierarchies, hierarchy);
312
+ if (!match) {
313
+ rootHierarchies.push(hierarchy);
314
+ return;
315
+ }
316
+ const targetHierarchy = rootHierarchies[match.existing.index];
317
+ const existingHierarchy = match.existing.hierarchy ?? buildParentHierarchy(targetHierarchy, match.existing.field);
318
+ const insertHierarchy = buildParentHierarchy(hierarchy, match.matchingField);
319
+ const mergedHierarchy = mergeHierarchies(existingHierarchy, insertHierarchy);
320
+ mergedHierarchy.field.category = hierarchy.field.category;
321
+ rootHierarchies[match.existing.index] = mergedHierarchy;
322
+ }
323
+ exports.addFieldHierarchy = addFieldHierarchy;
324
+ function createFieldPath(field) {
325
+ const path = [field];
326
+ let currField = field;
327
+ while (currField.parent) {
328
+ currField = currField.parent;
329
+ path.push(currField);
330
+ }
331
+ path.reverse();
332
+ return path;
333
+ }
334
+ /** @internal */
335
+ exports.FIELD_NAMES_SEPARATOR = "$";
336
+ /**
337
+ * Combines given field names in a way that allows them to be parsed back into a list of individual names using the [[parseCombinedFieldNames]] function.
338
+ * @public
339
+ */
340
+ function combineFieldNames(fieldName, parentFieldName) {
341
+ return parentFieldName ? `${parentFieldName}${exports.FIELD_NAMES_SEPARATOR}${fieldName}` : fieldName;
342
+ }
343
+ exports.combineFieldNames = combineFieldNames;
344
+ /**
345
+ * Parses given combined field names string, constructed using [[combineFieldNames]], into a list of individual field names.
346
+ * @public
347
+ */
348
+ function parseCombinedFieldNames(combinedName) {
349
+ return combinedName ? combinedName.split(exports.FIELD_NAMES_SEPARATOR) : [];
350
+ }
351
+ exports.parseCombinedFieldNames = parseCombinedFieldNames;
352
+ function convertNestedContentItemToStructArrayItem(item, field, nextField) {
353
+ const value = item.values[field.name] ?? [];
354
+ (0, core_bentley_1.assert)(Value_1.Value.isNestedContent(value));
355
+ if (value.length === 0)
356
+ return { emptyNestedItem: true, convertedItem: item };
357
+ const nextFieldValues = { raw: [], display: [] };
358
+ value.forEach((ncv) => {
359
+ const nextRawValue = ncv.values[nextField.name];
360
+ const nextDisplayValue = ncv.displayValues[nextField.name];
361
+ if (nextField.isNestedContentField()) {
362
+ if (nextRawValue) {
363
+ (0, core_bentley_1.assert)(Value_1.Value.isNestedContent(nextRawValue));
364
+ nextFieldValues.raw.push(...nextRawValue);
365
+ }
366
+ }
367
+ else {
368
+ nextFieldValues.raw.push(nextRawValue);
369
+ nextFieldValues.display.push(nextDisplayValue);
370
+ }
371
+ });
372
+ const convertedItem = new Item_1.Item(item.primaryKeys, item.label, item.imageId, item.classInfo, { [nextField.name]: nextFieldValues.raw }, { [nextField.name]: nextFieldValues.display }, item.mergedFieldNames, item.extendedData); // eslint-disable-line deprecation/deprecation
373
+ return { emptyNestedItem: false, convertedItem };
374
+ }
375
+ function convertNestedContentFieldHierarchyToStructArrayHierarchy(fieldHierarchy, parentFieldName) {
376
+ const fieldName = fieldHierarchy.field.name;
377
+ const convertedChildFieldHierarchies = fieldHierarchy.childFields.map((child) => {
378
+ if (child.field.isNestedContentField())
379
+ return convertNestedContentFieldHierarchyToStructArrayHierarchy(child, combineFieldNames(fieldName, parentFieldName));
380
+ return child;
381
+ });
382
+ const convertedFieldHierarchy = {
383
+ field: Object.assign(fieldHierarchy.field.clone(), {
384
+ type: {
385
+ valueFormat: TypeDescription_1.PropertyValueFormat.Array,
386
+ typeName: `${fieldHierarchy.field.type.typeName}[]`,
387
+ memberType: {
388
+ valueFormat: TypeDescription_1.PropertyValueFormat.Struct,
389
+ typeName: fieldHierarchy.field.type.typeName,
390
+ members: convertedChildFieldHierarchies.map((member) => ({
391
+ name: member.field.name,
392
+ label: member.field.label,
393
+ type: member.field.type,
394
+ })),
395
+ },
396
+ },
397
+ }),
398
+ childFields: convertedChildFieldHierarchies,
399
+ };
400
+ return convertedFieldHierarchy;
401
+ }
402
+ function convertNestedContentValuesToStructArrayValuesRecursive(fieldHierarchy, ncvs) {
403
+ const result = { raw: [], display: [], mergedFieldNames: [] };
404
+ ncvs.forEach((ncv) => {
405
+ const values = { ...ncv.values };
406
+ const displayValues = { ...ncv.displayValues };
407
+ const mergedFieldNames = [...ncv.mergedFieldNames];
408
+ fieldHierarchy.childFields.forEach((childFieldHierarchy) => {
409
+ const childFieldName = childFieldHierarchy.field.name;
410
+ if (-1 !== ncv.mergedFieldNames.indexOf(childFieldName)) {
411
+ return;
412
+ }
413
+ if (childFieldHierarchy.field.isNestedContentField()) {
414
+ const value = values[childFieldName];
415
+ (0, core_bentley_1.assert)(Value_1.Value.isNestedContent(value));
416
+ const convertedValues = convertNestedContentValuesToStructArrayValuesRecursive(childFieldHierarchy, value);
417
+ values[childFieldName] = convertedValues.raw;
418
+ displayValues[childFieldName] = convertedValues.display;
419
+ mergedFieldNames.push(...convertedValues.mergedFieldNames);
420
+ }
421
+ });
422
+ result.raw.push(values);
423
+ result.display.push(displayValues);
424
+ result.mergedFieldNames.push(...mergedFieldNames);
425
+ });
426
+ return result;
427
+ }
428
+ function convertNestedContentFieldHierarchyItemToStructArrayItem(item, fieldHierarchy) {
429
+ const fieldName = fieldHierarchy.field.name;
430
+ const rawValue = item.values[fieldName];
431
+ (0, core_bentley_1.assert)(Value_1.Value.isNestedContent(rawValue));
432
+ if (rawValue.length === 0)
433
+ return { emptyNestedItem: true, convertedItem: item };
434
+ const converted = convertNestedContentValuesToStructArrayValuesRecursive(fieldHierarchy, rawValue);
435
+ const convertedItem = new Item_1.Item(item.primaryKeys, item.label, item.imageId, item.classInfo, { [fieldName]: converted.raw }, { [fieldName]: converted.display }, converted.mergedFieldNames, item.extendedData); // eslint-disable-line deprecation/deprecation
436
+ return { emptyNestedItem: false, convertedItem };
437
+ }
440
438
  //# sourceMappingURL=ContentTraverser.js.map