@itwin/presentation-common 3.2.0-dev.7 → 3.2.0-dev.70

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 (315) hide show
  1. package/CHANGELOG.md +33 -1
  2. package/Ruleset.schema.json +297 -290
  3. package/lib/cjs/presentation-common/CommonLoggerCategory.d.ts +13 -0
  4. package/lib/cjs/presentation-common/CommonLoggerCategory.d.ts.map +1 -0
  5. package/lib/cjs/presentation-common/CommonLoggerCategory.js +21 -0
  6. package/lib/cjs/presentation-common/CommonLoggerCategory.js.map +1 -0
  7. package/lib/cjs/presentation-common/EC.d.ts +36 -0
  8. package/lib/cjs/presentation-common/EC.d.ts.map +1 -1
  9. package/lib/cjs/presentation-common/EC.js +38 -4
  10. package/lib/cjs/presentation-common/EC.js.map +1 -1
  11. package/lib/cjs/presentation-common/RpcRequestsHandler.d.ts.map +1 -1
  12. package/lib/cjs/presentation-common/RpcRequestsHandler.js +26 -0
  13. package/lib/cjs/presentation-common/RpcRequestsHandler.js.map +1 -1
  14. package/lib/cjs/presentation-common/Utils.d.ts +0 -2
  15. package/lib/cjs/presentation-common/Utils.d.ts.map +1 -1
  16. package/lib/cjs/presentation-common/Utils.js +1 -25
  17. package/lib/cjs/presentation-common/Utils.js.map +1 -1
  18. package/lib/cjs/presentation-common/content/ContentTraverser.js +2 -2
  19. package/lib/cjs/presentation-common/content/ContentTraverser.js.map +1 -1
  20. package/lib/cjs/presentation-common/content/Descriptor.d.ts +9 -6
  21. package/lib/cjs/presentation-common/content/Descriptor.d.ts.map +1 -1
  22. package/lib/cjs/presentation-common/content/Descriptor.js +4 -1
  23. package/lib/cjs/presentation-common/content/Descriptor.js.map +1 -1
  24. package/lib/cjs/presentation-common/content/Fields.d.ts +3 -3
  25. package/lib/cjs/presentation-common/content/Fields.d.ts.map +1 -1
  26. package/lib/cjs/presentation-common/content/Fields.js +11 -3
  27. package/lib/cjs/presentation-common/content/Fields.js.map +1 -1
  28. package/lib/cjs/presentation-common/content/Item.d.ts +7 -3
  29. package/lib/cjs/presentation-common/content/Item.d.ts.map +1 -1
  30. package/lib/cjs/presentation-common/content/Item.js +2 -2
  31. package/lib/cjs/presentation-common/content/Item.js.map +1 -1
  32. package/lib/cjs/presentation-common/hierarchy/Node.d.ts +35 -7
  33. package/lib/cjs/presentation-common/hierarchy/Node.d.ts.map +1 -1
  34. package/lib/cjs/presentation-common/hierarchy/Node.js.map +1 -1
  35. package/lib/cjs/presentation-common/rules/ClassSpecifications.d.ts +10 -8
  36. package/lib/cjs/presentation-common/rules/ClassSpecifications.d.ts.map +1 -1
  37. package/lib/cjs/presentation-common/rules/ClassSpecifications.js.map +1 -1
  38. package/lib/cjs/presentation-common/rules/RelatedInstanceSpecification.d.ts +10 -62
  39. package/lib/cjs/presentation-common/rules/RelatedInstanceSpecification.d.ts.map +1 -1
  40. package/lib/cjs/presentation-common/rules/RelatedInstanceSpecification.js.map +1 -1
  41. package/lib/cjs/presentation-common/rules/RelationshipPathSpecification.d.ts +20 -13
  42. package/lib/cjs/presentation-common/rules/RelationshipPathSpecification.d.ts.map +1 -1
  43. package/lib/cjs/presentation-common/rules/RelationshipPathSpecification.js.map +1 -1
  44. package/lib/cjs/presentation-common/rules/Rule.d.ts +11 -12
  45. package/lib/cjs/presentation-common/rules/Rule.d.ts.map +1 -1
  46. package/lib/cjs/presentation-common/rules/Rule.js.map +1 -1
  47. package/lib/cjs/presentation-common/rules/Ruleset.d.ts +6 -5
  48. package/lib/cjs/presentation-common/rules/Ruleset.d.ts.map +1 -1
  49. package/lib/cjs/presentation-common/rules/Ruleset.js.map +1 -1
  50. package/lib/cjs/presentation-common/rules/SchemasSpecification.d.ts +5 -2
  51. package/lib/cjs/presentation-common/rules/SchemasSpecification.d.ts.map +1 -1
  52. package/lib/cjs/presentation-common/rules/SchemasSpecification.js.map +1 -1
  53. package/lib/cjs/presentation-common/rules/Variables.d.ts +3 -3
  54. package/lib/cjs/presentation-common/rules/Variables.js.map +1 -1
  55. package/lib/cjs/presentation-common/rules/content/ContentInstancesOfSpecificClassesSpecification.d.ts +12 -14
  56. package/lib/cjs/presentation-common/rules/content/ContentInstancesOfSpecificClassesSpecification.d.ts.map +1 -1
  57. package/lib/cjs/presentation-common/rules/content/ContentInstancesOfSpecificClassesSpecification.js.map +1 -1
  58. package/lib/cjs/presentation-common/rules/content/ContentRelatedInstancesSpecification.d.ts +6 -8
  59. package/lib/cjs/presentation-common/rules/content/ContentRelatedInstancesSpecification.d.ts.map +1 -1
  60. package/lib/cjs/presentation-common/rules/content/ContentRelatedInstancesSpecification.js.map +1 -1
  61. package/lib/cjs/presentation-common/rules/content/ContentRule.d.ts +15 -10
  62. package/lib/cjs/presentation-common/rules/content/ContentRule.d.ts.map +1 -1
  63. package/lib/cjs/presentation-common/rules/content/ContentRule.js.map +1 -1
  64. package/lib/cjs/presentation-common/rules/content/ContentSpecification.d.ts +11 -5
  65. package/lib/cjs/presentation-common/rules/content/ContentSpecification.d.ts.map +1 -1
  66. package/lib/cjs/presentation-common/rules/content/ContentSpecification.js.map +1 -1
  67. package/lib/cjs/presentation-common/rules/content/DefaultPropertyCategoryOverride.d.ts +3 -4
  68. package/lib/cjs/presentation-common/rules/content/DefaultPropertyCategoryOverride.d.ts.map +1 -1
  69. package/lib/cjs/presentation-common/rules/content/DefaultPropertyCategoryOverride.js.map +1 -1
  70. package/lib/cjs/presentation-common/rules/content/PropertySpecification.d.ts +45 -21
  71. package/lib/cjs/presentation-common/rules/content/PropertySpecification.d.ts.map +1 -1
  72. package/lib/cjs/presentation-common/rules/content/PropertySpecification.js.map +1 -1
  73. package/lib/cjs/presentation-common/rules/content/SelectedNodeInstancesSpecification.d.ts +5 -10
  74. package/lib/cjs/presentation-common/rules/content/SelectedNodeInstancesSpecification.d.ts.map +1 -1
  75. package/lib/cjs/presentation-common/rules/content/SelectedNodeInstancesSpecification.js.map +1 -1
  76. package/lib/cjs/presentation-common/rules/content/modifiers/CalculatedPropertiesSpecification.d.ts +7 -10
  77. package/lib/cjs/presentation-common/rules/content/modifiers/CalculatedPropertiesSpecification.d.ts.map +1 -1
  78. package/lib/cjs/presentation-common/rules/content/modifiers/CalculatedPropertiesSpecification.js.map +1 -1
  79. package/lib/cjs/presentation-common/rules/content/modifiers/ContentModifier.d.ts +22 -12
  80. package/lib/cjs/presentation-common/rules/content/modifiers/ContentModifier.d.ts.map +1 -1
  81. package/lib/cjs/presentation-common/rules/content/modifiers/ContentModifier.js.map +1 -1
  82. package/lib/cjs/presentation-common/rules/content/modifiers/CustomRendererSpecification.d.ts +8 -2
  83. package/lib/cjs/presentation-common/rules/content/modifiers/CustomRendererSpecification.d.ts.map +1 -1
  84. package/lib/cjs/presentation-common/rules/content/modifiers/CustomRendererSpecification.js.map +1 -1
  85. package/lib/cjs/presentation-common/rules/content/modifiers/PropertyCategorySpecification.d.ts +30 -10
  86. package/lib/cjs/presentation-common/rules/content/modifiers/PropertyCategorySpecification.d.ts.map +1 -1
  87. package/lib/cjs/presentation-common/rules/content/modifiers/PropertyCategorySpecification.js.map +1 -1
  88. package/lib/cjs/presentation-common/rules/content/modifiers/PropertyEditorsSpecification.d.ts +9 -4
  89. package/lib/cjs/presentation-common/rules/content/modifiers/PropertyEditorsSpecification.d.ts.map +1 -1
  90. package/lib/cjs/presentation-common/rules/content/modifiers/PropertyEditorsSpecification.js.map +1 -1
  91. package/lib/cjs/presentation-common/rules/content/modifiers/RelatedPropertiesSpecification.d.ts +25 -21
  92. package/lib/cjs/presentation-common/rules/content/modifiers/RelatedPropertiesSpecification.d.ts.map +1 -1
  93. package/lib/cjs/presentation-common/rules/content/modifiers/RelatedPropertiesSpecification.js +5 -7
  94. package/lib/cjs/presentation-common/rules/content/modifiers/RelatedPropertiesSpecification.js.map +1 -1
  95. package/lib/cjs/presentation-common/rules/customization/CheckBoxRule.d.ts +8 -10
  96. package/lib/cjs/presentation-common/rules/customization/CheckBoxRule.d.ts.map +1 -1
  97. package/lib/cjs/presentation-common/rules/customization/CheckBoxRule.js.map +1 -1
  98. package/lib/cjs/presentation-common/rules/customization/CustomizationRule.d.ts +6 -3
  99. package/lib/cjs/presentation-common/rules/customization/CustomizationRule.d.ts.map +1 -1
  100. package/lib/cjs/presentation-common/rules/customization/CustomizationRule.js.map +1 -1
  101. package/lib/cjs/presentation-common/rules/customization/ExtendedDataRule.d.ts +9 -24
  102. package/lib/cjs/presentation-common/rules/customization/ExtendedDataRule.d.ts.map +1 -1
  103. package/lib/cjs/presentation-common/rules/customization/ExtendedDataRule.js.map +1 -1
  104. package/lib/cjs/presentation-common/rules/customization/GroupingRule.d.ts +55 -72
  105. package/lib/cjs/presentation-common/rules/customization/GroupingRule.d.ts.map +1 -1
  106. package/lib/cjs/presentation-common/rules/customization/GroupingRule.js +1 -1
  107. package/lib/cjs/presentation-common/rules/customization/GroupingRule.js.map +1 -1
  108. package/lib/cjs/presentation-common/rules/customization/ImageIdOverride.d.ts +9 -9
  109. package/lib/cjs/presentation-common/rules/customization/ImageIdOverride.d.ts.map +1 -1
  110. package/lib/cjs/presentation-common/rules/customization/ImageIdOverride.js.map +1 -1
  111. package/lib/cjs/presentation-common/rules/customization/InstanceLabelOverride.d.ts +33 -22
  112. package/lib/cjs/presentation-common/rules/customization/InstanceLabelOverride.d.ts.map +1 -1
  113. package/lib/cjs/presentation-common/rules/customization/InstanceLabelOverride.js +1 -1
  114. package/lib/cjs/presentation-common/rules/customization/InstanceLabelOverride.js.map +1 -1
  115. package/lib/cjs/presentation-common/rules/customization/LabelOverride.d.ts +14 -16
  116. package/lib/cjs/presentation-common/rules/customization/LabelOverride.d.ts.map +1 -1
  117. package/lib/cjs/presentation-common/rules/customization/LabelOverride.js.map +1 -1
  118. package/lib/cjs/presentation-common/rules/customization/SortingRule.d.ts +16 -29
  119. package/lib/cjs/presentation-common/rules/customization/SortingRule.d.ts.map +1 -1
  120. package/lib/cjs/presentation-common/rules/customization/SortingRule.js.map +1 -1
  121. package/lib/cjs/presentation-common/rules/customization/StyleOverride.d.ts +11 -11
  122. package/lib/cjs/presentation-common/rules/customization/StyleOverride.d.ts.map +1 -1
  123. package/lib/cjs/presentation-common/rules/customization/StyleOverride.js.map +1 -1
  124. package/lib/cjs/presentation-common/rules/hierarchy/ChildNodeRule.d.ts +4 -5
  125. package/lib/cjs/presentation-common/rules/hierarchy/ChildNodeRule.d.ts.map +1 -1
  126. package/lib/cjs/presentation-common/rules/hierarchy/ChildNodeRule.js.map +1 -1
  127. package/lib/cjs/presentation-common/rules/hierarchy/ChildNodeSpecification.d.ts +30 -32
  128. package/lib/cjs/presentation-common/rules/hierarchy/ChildNodeSpecification.d.ts.map +1 -1
  129. package/lib/cjs/presentation-common/rules/hierarchy/ChildNodeSpecification.js.map +1 -1
  130. package/lib/cjs/presentation-common/rules/hierarchy/CustomNodeSpecification.d.ts +11 -6
  131. package/lib/cjs/presentation-common/rules/hierarchy/CustomNodeSpecification.d.ts.map +1 -1
  132. package/lib/cjs/presentation-common/rules/hierarchy/CustomNodeSpecification.js.map +1 -1
  133. package/lib/cjs/presentation-common/rules/hierarchy/CustomQueryInstanceNodesSpecification.d.ts +19 -20
  134. package/lib/cjs/presentation-common/rules/hierarchy/CustomQueryInstanceNodesSpecification.d.ts.map +1 -1
  135. package/lib/cjs/presentation-common/rules/hierarchy/CustomQueryInstanceNodesSpecification.js.map +1 -1
  136. package/lib/cjs/presentation-common/rules/hierarchy/InstanceNodesOfSpecificClassesSpecification.d.ts +14 -10
  137. package/lib/cjs/presentation-common/rules/hierarchy/InstanceNodesOfSpecificClassesSpecification.d.ts.map +1 -1
  138. package/lib/cjs/presentation-common/rules/hierarchy/InstanceNodesOfSpecificClassesSpecification.js.map +1 -1
  139. package/lib/cjs/presentation-common/rules/hierarchy/NavigationRule.d.ts +16 -15
  140. package/lib/cjs/presentation-common/rules/hierarchy/NavigationRule.d.ts.map +1 -1
  141. package/lib/cjs/presentation-common/rules/hierarchy/NavigationRule.js.map +1 -1
  142. package/lib/cjs/presentation-common/rules/hierarchy/NodeArtifactsRule.d.ts +9 -28
  143. package/lib/cjs/presentation-common/rules/hierarchy/NodeArtifactsRule.d.ts.map +1 -1
  144. package/lib/cjs/presentation-common/rules/hierarchy/NodeArtifactsRule.js.map +1 -1
  145. package/lib/cjs/presentation-common/rules/hierarchy/RelatedInstanceNodesSpecification.d.ts +8 -9
  146. package/lib/cjs/presentation-common/rules/hierarchy/RelatedInstanceNodesSpecification.d.ts.map +1 -1
  147. package/lib/cjs/presentation-common/rules/hierarchy/RelatedInstanceNodesSpecification.js.map +1 -1
  148. package/lib/cjs/presentation-common/rules/hierarchy/RootNodeRule.d.ts +3 -4
  149. package/lib/cjs/presentation-common/rules/hierarchy/RootNodeRule.d.ts.map +1 -1
  150. package/lib/cjs/presentation-common/rules/hierarchy/RootNodeRule.js.map +1 -1
  151. package/lib/cjs/presentation-common/rules/hierarchy/SubCondition.d.ts +17 -10
  152. package/lib/cjs/presentation-common/rules/hierarchy/SubCondition.d.ts.map +1 -1
  153. package/lib/cjs/presentation-common/rules/hierarchy/SubCondition.js.map +1 -1
  154. package/lib/cjs/presentation-common/selection/SelectionScope.d.ts +1 -1
  155. package/lib/cjs/presentation-common/selection/SelectionScope.js.map +1 -1
  156. package/lib/cjs/presentation-common.d.ts +3 -3
  157. package/lib/cjs/presentation-common.js +3 -3
  158. package/lib/cjs/presentation-common.js.map +1 -1
  159. package/lib/esm/presentation-common/CommonLoggerCategory.d.ts +13 -0
  160. package/lib/esm/presentation-common/CommonLoggerCategory.d.ts.map +1 -0
  161. package/lib/esm/presentation-common/CommonLoggerCategory.js +18 -0
  162. package/lib/esm/presentation-common/CommonLoggerCategory.js.map +1 -0
  163. package/lib/esm/presentation-common/EC.d.ts +36 -0
  164. package/lib/esm/presentation-common/EC.d.ts.map +1 -1
  165. package/lib/esm/presentation-common/EC.js +37 -3
  166. package/lib/esm/presentation-common/EC.js.map +1 -1
  167. package/lib/esm/presentation-common/RpcRequestsHandler.d.ts.map +1 -1
  168. package/lib/esm/presentation-common/RpcRequestsHandler.js +27 -1
  169. package/lib/esm/presentation-common/RpcRequestsHandler.js.map +1 -1
  170. package/lib/esm/presentation-common/Utils.d.ts +0 -2
  171. package/lib/esm/presentation-common/Utils.d.ts.map +1 -1
  172. package/lib/esm/presentation-common/Utils.js +0 -4
  173. package/lib/esm/presentation-common/Utils.js.map +1 -1
  174. package/lib/esm/presentation-common/content/ContentTraverser.js +2 -2
  175. package/lib/esm/presentation-common/content/ContentTraverser.js.map +1 -1
  176. package/lib/esm/presentation-common/content/Descriptor.d.ts +9 -6
  177. package/lib/esm/presentation-common/content/Descriptor.d.ts.map +1 -1
  178. package/lib/esm/presentation-common/content/Descriptor.js +4 -1
  179. package/lib/esm/presentation-common/content/Descriptor.js.map +1 -1
  180. package/lib/esm/presentation-common/content/Fields.d.ts +3 -3
  181. package/lib/esm/presentation-common/content/Fields.d.ts.map +1 -1
  182. package/lib/esm/presentation-common/content/Fields.js +11 -3
  183. package/lib/esm/presentation-common/content/Fields.js.map +1 -1
  184. package/lib/esm/presentation-common/content/Item.d.ts +7 -3
  185. package/lib/esm/presentation-common/content/Item.d.ts.map +1 -1
  186. package/lib/esm/presentation-common/content/Item.js +2 -2
  187. package/lib/esm/presentation-common/content/Item.js.map +1 -1
  188. package/lib/esm/presentation-common/hierarchy/Node.d.ts +35 -7
  189. package/lib/esm/presentation-common/hierarchy/Node.d.ts.map +1 -1
  190. package/lib/esm/presentation-common/hierarchy/Node.js.map +1 -1
  191. package/lib/esm/presentation-common/rules/ClassSpecifications.d.ts +10 -8
  192. package/lib/esm/presentation-common/rules/ClassSpecifications.d.ts.map +1 -1
  193. package/lib/esm/presentation-common/rules/ClassSpecifications.js.map +1 -1
  194. package/lib/esm/presentation-common/rules/RelatedInstanceSpecification.d.ts +10 -62
  195. package/lib/esm/presentation-common/rules/RelatedInstanceSpecification.d.ts.map +1 -1
  196. package/lib/esm/presentation-common/rules/RelatedInstanceSpecification.js.map +1 -1
  197. package/lib/esm/presentation-common/rules/RelationshipPathSpecification.d.ts +20 -13
  198. package/lib/esm/presentation-common/rules/RelationshipPathSpecification.d.ts.map +1 -1
  199. package/lib/esm/presentation-common/rules/RelationshipPathSpecification.js.map +1 -1
  200. package/lib/esm/presentation-common/rules/Rule.d.ts +11 -12
  201. package/lib/esm/presentation-common/rules/Rule.d.ts.map +1 -1
  202. package/lib/esm/presentation-common/rules/Rule.js.map +1 -1
  203. package/lib/esm/presentation-common/rules/Ruleset.d.ts +6 -5
  204. package/lib/esm/presentation-common/rules/Ruleset.d.ts.map +1 -1
  205. package/lib/esm/presentation-common/rules/Ruleset.js.map +1 -1
  206. package/lib/esm/presentation-common/rules/SchemasSpecification.d.ts +5 -2
  207. package/lib/esm/presentation-common/rules/SchemasSpecification.d.ts.map +1 -1
  208. package/lib/esm/presentation-common/rules/SchemasSpecification.js.map +1 -1
  209. package/lib/esm/presentation-common/rules/Variables.d.ts +3 -3
  210. package/lib/esm/presentation-common/rules/Variables.js.map +1 -1
  211. package/lib/esm/presentation-common/rules/content/ContentInstancesOfSpecificClassesSpecification.d.ts +12 -14
  212. package/lib/esm/presentation-common/rules/content/ContentInstancesOfSpecificClassesSpecification.d.ts.map +1 -1
  213. package/lib/esm/presentation-common/rules/content/ContentInstancesOfSpecificClassesSpecification.js.map +1 -1
  214. package/lib/esm/presentation-common/rules/content/ContentRelatedInstancesSpecification.d.ts +6 -8
  215. package/lib/esm/presentation-common/rules/content/ContentRelatedInstancesSpecification.d.ts.map +1 -1
  216. package/lib/esm/presentation-common/rules/content/ContentRelatedInstancesSpecification.js.map +1 -1
  217. package/lib/esm/presentation-common/rules/content/ContentRule.d.ts +15 -10
  218. package/lib/esm/presentation-common/rules/content/ContentRule.d.ts.map +1 -1
  219. package/lib/esm/presentation-common/rules/content/ContentRule.js.map +1 -1
  220. package/lib/esm/presentation-common/rules/content/ContentSpecification.d.ts +11 -5
  221. package/lib/esm/presentation-common/rules/content/ContentSpecification.d.ts.map +1 -1
  222. package/lib/esm/presentation-common/rules/content/ContentSpecification.js.map +1 -1
  223. package/lib/esm/presentation-common/rules/content/DefaultPropertyCategoryOverride.d.ts +3 -4
  224. package/lib/esm/presentation-common/rules/content/DefaultPropertyCategoryOverride.d.ts.map +1 -1
  225. package/lib/esm/presentation-common/rules/content/DefaultPropertyCategoryOverride.js.map +1 -1
  226. package/lib/esm/presentation-common/rules/content/PropertySpecification.d.ts +45 -21
  227. package/lib/esm/presentation-common/rules/content/PropertySpecification.d.ts.map +1 -1
  228. package/lib/esm/presentation-common/rules/content/PropertySpecification.js.map +1 -1
  229. package/lib/esm/presentation-common/rules/content/SelectedNodeInstancesSpecification.d.ts +5 -10
  230. package/lib/esm/presentation-common/rules/content/SelectedNodeInstancesSpecification.d.ts.map +1 -1
  231. package/lib/esm/presentation-common/rules/content/SelectedNodeInstancesSpecification.js.map +1 -1
  232. package/lib/esm/presentation-common/rules/content/modifiers/CalculatedPropertiesSpecification.d.ts +7 -10
  233. package/lib/esm/presentation-common/rules/content/modifiers/CalculatedPropertiesSpecification.d.ts.map +1 -1
  234. package/lib/esm/presentation-common/rules/content/modifiers/CalculatedPropertiesSpecification.js.map +1 -1
  235. package/lib/esm/presentation-common/rules/content/modifiers/ContentModifier.d.ts +22 -12
  236. package/lib/esm/presentation-common/rules/content/modifiers/ContentModifier.d.ts.map +1 -1
  237. package/lib/esm/presentation-common/rules/content/modifiers/ContentModifier.js.map +1 -1
  238. package/lib/esm/presentation-common/rules/content/modifiers/CustomRendererSpecification.d.ts +8 -2
  239. package/lib/esm/presentation-common/rules/content/modifiers/CustomRendererSpecification.d.ts.map +1 -1
  240. package/lib/esm/presentation-common/rules/content/modifiers/CustomRendererSpecification.js.map +1 -1
  241. package/lib/esm/presentation-common/rules/content/modifiers/PropertyCategorySpecification.d.ts +30 -10
  242. package/lib/esm/presentation-common/rules/content/modifiers/PropertyCategorySpecification.d.ts.map +1 -1
  243. package/lib/esm/presentation-common/rules/content/modifiers/PropertyCategorySpecification.js.map +1 -1
  244. package/lib/esm/presentation-common/rules/content/modifiers/PropertyEditorsSpecification.d.ts +9 -4
  245. package/lib/esm/presentation-common/rules/content/modifiers/PropertyEditorsSpecification.d.ts.map +1 -1
  246. package/lib/esm/presentation-common/rules/content/modifiers/PropertyEditorsSpecification.js.map +1 -1
  247. package/lib/esm/presentation-common/rules/content/modifiers/RelatedPropertiesSpecification.d.ts +25 -21
  248. package/lib/esm/presentation-common/rules/content/modifiers/RelatedPropertiesSpecification.d.ts.map +1 -1
  249. package/lib/esm/presentation-common/rules/content/modifiers/RelatedPropertiesSpecification.js +5 -7
  250. package/lib/esm/presentation-common/rules/content/modifiers/RelatedPropertiesSpecification.js.map +1 -1
  251. package/lib/esm/presentation-common/rules/customization/CheckBoxRule.d.ts +8 -10
  252. package/lib/esm/presentation-common/rules/customization/CheckBoxRule.d.ts.map +1 -1
  253. package/lib/esm/presentation-common/rules/customization/CheckBoxRule.js.map +1 -1
  254. package/lib/esm/presentation-common/rules/customization/CustomizationRule.d.ts +6 -3
  255. package/lib/esm/presentation-common/rules/customization/CustomizationRule.d.ts.map +1 -1
  256. package/lib/esm/presentation-common/rules/customization/CustomizationRule.js.map +1 -1
  257. package/lib/esm/presentation-common/rules/customization/ExtendedDataRule.d.ts +9 -24
  258. package/lib/esm/presentation-common/rules/customization/ExtendedDataRule.d.ts.map +1 -1
  259. package/lib/esm/presentation-common/rules/customization/ExtendedDataRule.js.map +1 -1
  260. package/lib/esm/presentation-common/rules/customization/GroupingRule.d.ts +55 -72
  261. package/lib/esm/presentation-common/rules/customization/GroupingRule.d.ts.map +1 -1
  262. package/lib/esm/presentation-common/rules/customization/GroupingRule.js +1 -1
  263. package/lib/esm/presentation-common/rules/customization/GroupingRule.js.map +1 -1
  264. package/lib/esm/presentation-common/rules/customization/ImageIdOverride.d.ts +9 -9
  265. package/lib/esm/presentation-common/rules/customization/ImageIdOverride.d.ts.map +1 -1
  266. package/lib/esm/presentation-common/rules/customization/ImageIdOverride.js.map +1 -1
  267. package/lib/esm/presentation-common/rules/customization/InstanceLabelOverride.d.ts +33 -22
  268. package/lib/esm/presentation-common/rules/customization/InstanceLabelOverride.d.ts.map +1 -1
  269. package/lib/esm/presentation-common/rules/customization/InstanceLabelOverride.js +1 -1
  270. package/lib/esm/presentation-common/rules/customization/InstanceLabelOverride.js.map +1 -1
  271. package/lib/esm/presentation-common/rules/customization/LabelOverride.d.ts +14 -16
  272. package/lib/esm/presentation-common/rules/customization/LabelOverride.d.ts.map +1 -1
  273. package/lib/esm/presentation-common/rules/customization/LabelOverride.js.map +1 -1
  274. package/lib/esm/presentation-common/rules/customization/SortingRule.d.ts +16 -29
  275. package/lib/esm/presentation-common/rules/customization/SortingRule.d.ts.map +1 -1
  276. package/lib/esm/presentation-common/rules/customization/SortingRule.js.map +1 -1
  277. package/lib/esm/presentation-common/rules/customization/StyleOverride.d.ts +11 -11
  278. package/lib/esm/presentation-common/rules/customization/StyleOverride.d.ts.map +1 -1
  279. package/lib/esm/presentation-common/rules/customization/StyleOverride.js.map +1 -1
  280. package/lib/esm/presentation-common/rules/hierarchy/ChildNodeRule.d.ts +4 -5
  281. package/lib/esm/presentation-common/rules/hierarchy/ChildNodeRule.d.ts.map +1 -1
  282. package/lib/esm/presentation-common/rules/hierarchy/ChildNodeRule.js.map +1 -1
  283. package/lib/esm/presentation-common/rules/hierarchy/ChildNodeSpecification.d.ts +30 -32
  284. package/lib/esm/presentation-common/rules/hierarchy/ChildNodeSpecification.d.ts.map +1 -1
  285. package/lib/esm/presentation-common/rules/hierarchy/ChildNodeSpecification.js.map +1 -1
  286. package/lib/esm/presentation-common/rules/hierarchy/CustomNodeSpecification.d.ts +11 -6
  287. package/lib/esm/presentation-common/rules/hierarchy/CustomNodeSpecification.d.ts.map +1 -1
  288. package/lib/esm/presentation-common/rules/hierarchy/CustomNodeSpecification.js.map +1 -1
  289. package/lib/esm/presentation-common/rules/hierarchy/CustomQueryInstanceNodesSpecification.d.ts +19 -20
  290. package/lib/esm/presentation-common/rules/hierarchy/CustomQueryInstanceNodesSpecification.d.ts.map +1 -1
  291. package/lib/esm/presentation-common/rules/hierarchy/CustomQueryInstanceNodesSpecification.js.map +1 -1
  292. package/lib/esm/presentation-common/rules/hierarchy/InstanceNodesOfSpecificClassesSpecification.d.ts +14 -10
  293. package/lib/esm/presentation-common/rules/hierarchy/InstanceNodesOfSpecificClassesSpecification.d.ts.map +1 -1
  294. package/lib/esm/presentation-common/rules/hierarchy/InstanceNodesOfSpecificClassesSpecification.js.map +1 -1
  295. package/lib/esm/presentation-common/rules/hierarchy/NavigationRule.d.ts +16 -15
  296. package/lib/esm/presentation-common/rules/hierarchy/NavigationRule.d.ts.map +1 -1
  297. package/lib/esm/presentation-common/rules/hierarchy/NavigationRule.js.map +1 -1
  298. package/lib/esm/presentation-common/rules/hierarchy/NodeArtifactsRule.d.ts +9 -28
  299. package/lib/esm/presentation-common/rules/hierarchy/NodeArtifactsRule.d.ts.map +1 -1
  300. package/lib/esm/presentation-common/rules/hierarchy/NodeArtifactsRule.js.map +1 -1
  301. package/lib/esm/presentation-common/rules/hierarchy/RelatedInstanceNodesSpecification.d.ts +8 -9
  302. package/lib/esm/presentation-common/rules/hierarchy/RelatedInstanceNodesSpecification.d.ts.map +1 -1
  303. package/lib/esm/presentation-common/rules/hierarchy/RelatedInstanceNodesSpecification.js.map +1 -1
  304. package/lib/esm/presentation-common/rules/hierarchy/RootNodeRule.d.ts +3 -4
  305. package/lib/esm/presentation-common/rules/hierarchy/RootNodeRule.d.ts.map +1 -1
  306. package/lib/esm/presentation-common/rules/hierarchy/RootNodeRule.js.map +1 -1
  307. package/lib/esm/presentation-common/rules/hierarchy/SubCondition.d.ts +17 -10
  308. package/lib/esm/presentation-common/rules/hierarchy/SubCondition.d.ts.map +1 -1
  309. package/lib/esm/presentation-common/rules/hierarchy/SubCondition.js.map +1 -1
  310. package/lib/esm/presentation-common/selection/SelectionScope.d.ts +1 -1
  311. package/lib/esm/presentation-common/selection/SelectionScope.js.map +1 -1
  312. package/lib/esm/presentation-common.d.ts +3 -3
  313. package/lib/esm/presentation-common.js +3 -3
  314. package/lib/esm/presentation-common.js.map +1 -1
  315. package/package.json +9 -10
@@ -4,43 +4,50 @@
4
4
  import { SingleSchemaClassSpecification } from "./ClassSpecifications";
5
5
  import { RelationshipDirection } from "./RelationshipDirection";
6
6
  /**
7
- * Specification of a single relationship path step.
7
+ * Specification of a single step in [[RelationshipPathSpecification]].
8
+ *
9
+ * @see [Relationship path specification reference documentation page]($docs/presentation/RelationshipPathSpecification.md)
8
10
  * @public
9
11
  */
10
12
  export interface RelationshipStepSpecification {
11
- /** Specification of the relationship to use for joining the related instance. */
13
+ /** This attribute specifies the ECRelationship that should be used to traverse to target class. */
12
14
  relationship: SingleSchemaClassSpecification;
13
- /** Relationship direction that should be followed to find the target class. */
15
+ /** This attribute specifies the direction in which the [[relationship]] should be followed. */
14
16
  direction: RelationshipDirection.Forward | RelationshipDirection.Backward;
15
17
  /**
16
- * Specification of the target class. Either relationship's source or target class is used (based
17
- * on specified direction) if more specific target class is not specified by this attribute.
18
+ * This attribute may be used to specialize the target of the relationship.
18
19
  */
19
20
  targetClass?: SingleSchemaClassSpecification;
20
21
  }
21
22
  /**
22
- * Specification of a single relationship path step.
23
+ * Specification of a single step in [[RepeatableRelationshipPathSpecification]].
24
+ *
25
+ * @see [Repeatable relationship path specification reference documentation page]($docs/presentation/RepeatableRelationshipPathSpecification.md)
23
26
  * @public
24
27
  */
25
28
  export interface RepeatableRelationshipStepSpecification extends RelationshipStepSpecification {
26
29
  /**
27
- * Number of relationship steps that should be taken. Special `*` value means that
28
- * relationship is traversed recursively and all matching instances are accumulated.
29
- * Defaults to `1`.
30
+ * When a number is specified, the relationship is traversed recursively the specified number of times.
31
+ *
32
+ * When it is set to a special value `"*"`, the same relationship is traversed recursively unbounded number
33
+ * of times, starting from zero (the relationship is not followed). On each traversal iteration, Presentation
34
+ * rules engine accumulates all indirectly related ECInstances as defined by the remaining relationship path.
30
35
  */
31
36
  count?: number | "*";
32
37
  }
33
38
  /**
34
- * Specification of a relationship path.
39
+ * Relationship path specification is used to define a relationship path to an ECClass.
35
40
  *
36
- * @see [More details]($docs/presentation/RelationshipPathSpecification.md)
41
+ * @see [Relationship path specification reference documentation page]($docs/presentation/RelationshipPathSpecification.md)
37
42
  * @public
38
43
  */
39
44
  export declare type RelationshipPathSpecification = RelationshipStepSpecification | RelationshipStepSpecification[];
40
45
  /**
41
- * Specification of a repeatable relationship path.
46
+ * This specification declares a step in a relationship path between a source and target ECInstances. A step
47
+ * can optionally be repeated a number of times to traverse the same relationship recursively. Multiple
48
+ * specifications of this type can be chained together to express complex indirect relationships.
42
49
  *
43
- * @see [More details]($docs/presentation/RepeatableRelationshipPathSpecification.md)
50
+ * @see [Repeatable relationship path specification reference documentation page]($docs/presentation/RepeatableRelationshipPathSpecification.md)
44
51
  * @public
45
52
  */
46
53
  export declare type RepeatableRelationshipPathSpecification = RepeatableRelationshipStepSpecification | RepeatableRelationshipStepSpecification[];
@@ -1 +1 @@
1
- {"version":3,"file":"RelationshipPathSpecification.d.ts","sourceRoot":"","sources":["../../../../src/presentation-common/rules/RelationshipPathSpecification.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAE,8BAA8B,EAAE,MAAM,uBAAuB,CAAC;AACvE,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAEhE;;;GAGG;AACH,MAAM,WAAW,6BAA6B;IAC5C,iFAAiF;IACjF,YAAY,EAAE,8BAA8B,CAAC;IAE7C,+EAA+E;IAC/E,SAAS,EAAE,qBAAqB,CAAC,OAAO,GAAG,qBAAqB,CAAC,QAAQ,CAAC;IAE1E;;;OAGG;IACH,WAAW,CAAC,EAAE,8BAA8B,CAAC;CAC9C;AAED;;;GAGG;AACH,MAAM,WAAW,uCAAwC,SAAQ,6BAA6B;IAC5F;;;;OAIG;IACH,KAAK,CAAC,EAAE,MAAM,GAAG,GAAG,CAAC;CACtB;AAED;;;;;GAKG;AACH,oBAAY,6BAA6B,GAAG,6BAA6B,GAAG,6BAA6B,EAAE,CAAC;AAE5G;;;;;GAKG;AACH,oBAAY,uCAAuC,GAAG,uCAAuC,GAAG,uCAAuC,EAAE,CAAC"}
1
+ {"version":3,"file":"RelationshipPathSpecification.d.ts","sourceRoot":"","sources":["../../../../src/presentation-common/rules/RelationshipPathSpecification.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAE,8BAA8B,EAAE,MAAM,uBAAuB,CAAC;AACvE,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAEhE;;;;;GAKG;AACH,MAAM,WAAW,6BAA6B;IAC5C,mGAAmG;IACnG,YAAY,EAAE,8BAA8B,CAAC;IAE7C,+FAA+F;IAC/F,SAAS,EAAE,qBAAqB,CAAC,OAAO,GAAG,qBAAqB,CAAC,QAAQ,CAAC;IAE1E;;OAEG;IACH,WAAW,CAAC,EAAE,8BAA8B,CAAC;CAC9C;AAED;;;;;GAKG;AACH,MAAM,WAAW,uCAAwC,SAAQ,6BAA6B;IAC5F;;;;;;OAMG;IACH,KAAK,CAAC,EAAE,MAAM,GAAG,GAAG,CAAC;CACtB;AAED;;;;;GAKG;AACH,oBAAY,6BAA6B,GAAG,6BAA6B,GAAG,6BAA6B,EAAE,CAAC;AAE5G;;;;;;;GAOG;AACH,oBAAY,uCAAuC,GAAG,uCAAuC,GAAG,uCAAuC,EAAE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"RelationshipPathSpecification.js","sourceRoot":"","sources":["../../../../src/presentation-common/rules/RelationshipPathSpecification.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG","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 PresentationRules\r\n */\r\n\r\nimport { SingleSchemaClassSpecification } from \"./ClassSpecifications\";\r\nimport { RelationshipDirection } from \"./RelationshipDirection\";\r\n\r\n/**\r\n * Specification of a single relationship path step.\r\n * @public\r\n */\r\nexport interface RelationshipStepSpecification {\r\n /** Specification of the relationship to use for joining the related instance. */\r\n relationship: SingleSchemaClassSpecification;\r\n\r\n /** Relationship direction that should be followed to find the target class. */\r\n direction: RelationshipDirection.Forward | RelationshipDirection.Backward;\r\n\r\n /**\r\n * Specification of the target class. Either relationship's source or target class is used (based\r\n * on specified direction) if more specific target class is not specified by this attribute.\r\n */\r\n targetClass?: SingleSchemaClassSpecification;\r\n}\r\n\r\n/**\r\n * Specification of a single relationship path step.\r\n * @public\r\n */\r\nexport interface RepeatableRelationshipStepSpecification extends RelationshipStepSpecification {\r\n /**\r\n * Number of relationship steps that should be taken. Special `*` value means that\r\n * relationship is traversed recursively and all matching instances are accumulated.\r\n * Defaults to `1`.\r\n */\r\n count?: number | \"*\";\r\n}\r\n\r\n/**\r\n * Specification of a relationship path.\r\n *\r\n * @see [More details]($docs/presentation/RelationshipPathSpecification.md)\r\n * @public\r\n */\r\nexport type RelationshipPathSpecification = RelationshipStepSpecification | RelationshipStepSpecification[];\r\n\r\n/**\r\n * Specification of a repeatable relationship path.\r\n *\r\n * @see [More details]($docs/presentation/RepeatableRelationshipPathSpecification.md)\r\n * @public\r\n */\r\nexport type RepeatableRelationshipPathSpecification = RepeatableRelationshipStepSpecification | RepeatableRelationshipStepSpecification[];\r\n"]}
1
+ {"version":3,"file":"RelationshipPathSpecification.js","sourceRoot":"","sources":["../../../../src/presentation-common/rules/RelationshipPathSpecification.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG","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 PresentationRules\r\n */\r\n\r\nimport { SingleSchemaClassSpecification } from \"./ClassSpecifications\";\r\nimport { RelationshipDirection } from \"./RelationshipDirection\";\r\n\r\n/**\r\n * Specification of a single step in [[RelationshipPathSpecification]].\r\n *\r\n * @see [Relationship path specification reference documentation page]($docs/presentation/RelationshipPathSpecification.md)\r\n * @public\r\n */\r\nexport interface RelationshipStepSpecification {\r\n /** This attribute specifies the ECRelationship that should be used to traverse to target class. */\r\n relationship: SingleSchemaClassSpecification;\r\n\r\n /** This attribute specifies the direction in which the [[relationship]] should be followed. */\r\n direction: RelationshipDirection.Forward | RelationshipDirection.Backward;\r\n\r\n /**\r\n * This attribute may be used to specialize the target of the relationship.\r\n */\r\n targetClass?: SingleSchemaClassSpecification;\r\n}\r\n\r\n/**\r\n * Specification of a single step in [[RepeatableRelationshipPathSpecification]].\r\n *\r\n * @see [Repeatable relationship path specification reference documentation page]($docs/presentation/RepeatableRelationshipPathSpecification.md)\r\n * @public\r\n */\r\nexport interface RepeatableRelationshipStepSpecification extends RelationshipStepSpecification {\r\n /**\r\n * When a number is specified, the relationship is traversed recursively the specified number of times.\r\n *\r\n * When it is set to a special value `\"*\"`, the same relationship is traversed recursively unbounded number\r\n * of times, starting from zero (the relationship is not followed). On each traversal iteration, Presentation\r\n * rules engine accumulates all indirectly related ECInstances as defined by the remaining relationship path.\r\n */\r\n count?: number | \"*\";\r\n}\r\n\r\n/**\r\n * Relationship path specification is used to define a relationship path to an ECClass.\r\n *\r\n * @see [Relationship path specification reference documentation page]($docs/presentation/RelationshipPathSpecification.md)\r\n * @public\r\n */\r\nexport type RelationshipPathSpecification = RelationshipStepSpecification | RelationshipStepSpecification[];\r\n\r\n/**\r\n * This specification declares a step in a relationship path between a source and target ECInstances. A step\r\n * can optionally be repeated a number of times to traverse the same relationship recursively. Multiple\r\n * specifications of this type can be chained together to express complex indirect relationships.\r\n *\r\n * @see [Repeatable relationship path specification reference documentation page]($docs/presentation/RepeatableRelationshipPathSpecification.md)\r\n * @public\r\n */\r\nexport type RepeatableRelationshipPathSpecification = RepeatableRelationshipStepSpecification | RepeatableRelationshipStepSpecification[];\r\n"]}
@@ -8,47 +8,46 @@ import { CustomizationRule } from "./customization/CustomizationRule";
8
8
  import { NavigationRule } from "./hierarchy/NavigationRule";
9
9
  import { RequiredSchemaSpecification } from "./SchemasSpecification";
10
10
  /**
11
- * Base interface for all [[Rule]] implementations. Not meant
12
- * to be used directly, see `Rule`.
13
- *
11
+ * Base interface for all [[Rule]] implementations.
14
12
  * @public
15
13
  */
16
14
  export interface RuleBase {
17
15
  /** Used for serializing to JSON. */
18
16
  ruleType: RuleTypes;
19
17
  /**
20
- * Defines the order in which presentation rules will be evaluated and executed. Defaults to `1000`.
18
+ * Defines the order in which rules are handled, higher number means the rule is handled first. If priorities are
19
+ * equal, the rules are handled in the order they're defined.
21
20
  *
22
21
  * @type integer
23
22
  */
24
23
  priority?: number;
25
24
  /**
26
- * Should this rule should be ignored if there is already an existing
27
- * rule with a higher priority.
25
+ * Tells the library that the rule should only be handled if no other rule of the same type was handled previously (based on rule
26
+ * priorities and definition order). This allows adding fallback rules which can be overriden by higher-priority rules.
28
27
  */
29
28
  onlyIfNotHandled?: boolean;
30
29
  /**
31
- * Schema requirements for this rule. The rule is not used if the requirements are not met.
30
+ * A list of [ECSchema requirements]($docs/presentation/RequiredSchemaSpecification.md) that need to be met for the rule to be used.
32
31
  * @beta
33
32
  */
34
33
  requiredSchemas?: RequiredSchemaSpecification[];
35
34
  }
36
35
  /**
37
- * Presentation rules allow configuring the hierarchy and content.
36
+ * A union of all presentation rule types.
38
37
  * @public
39
38
  */
40
39
  export declare type Rule = CustomizationRule | NavigationRule | ContentRule | ContentModifier | DefaultPropertyCategoryOverride;
41
40
  /**
42
41
  * Container of a [[condition]] property. Used for rules that support conditions. Not
43
- * meant to be used directly, see `Rule`.
42
+ * meant to be used directly, see [[Rule]].
44
43
  *
44
+ * @deprecated This interface is not used anymore. All interfaces that used to extend it, have the [[condition]]
45
+ * attribute of their own.
45
46
  * @public
46
47
  */
47
48
  export interface ConditionContainer {
48
49
  /**
49
- * Defines a condition for the rule, which needs to be met in order to execute it. Condition
50
- * is an [ECExpression]($docs/presentation/Advanced/ECExpressions.md), which can use
51
- * a limited set of symbols (depends on specific `ConditionContainer`).
50
+ * Defines a condition for the rule, which needs to be met in order to execute it.
52
51
  */
53
52
  condition?: string;
54
53
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Rule.d.ts","sourceRoot":"","sources":["../../../../src/presentation-common/rules/Rule.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,+BAA+B,EAAE,MAAM,2CAA2C,CAAC;AAC5F,OAAO,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAC;AACtE,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AACtE,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,2BAA2B,EAAE,MAAM,wBAAwB,CAAC;AAErE;;;;;GAKG;AACH,MAAM,WAAW,QAAQ;IACvB,oCAAoC;IACpC,QAAQ,EAAE,SAAS,CAAC;IAEpB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;;OAGG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAE3B;;;OAGG;IACH,eAAe,CAAC,EAAE,2BAA2B,EAAE,CAAC;CACjD;AAED;;;GAGG;AACH,MAAM,CAAC,OAAO,MAAM,IAAI,GAAG,iBAAiB,GAAG,cAAc,GAAG,WAAW,GAAG,eAAe,GAAG,+BAA+B,CAAC;AAEhI;;;;;GAKG;AACH,MAAM,WAAW,kBAAkB;IACjC;;;;OAIG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;GAGG;AACH,oBAAY,SAAS;IAEnB,SAAS,cAAc;IACvB,UAAU,eAAe;IAGzB,OAAO,YAAY;IACnB,eAAe,oBAAoB;IACnC,+BAA+B,oCAAoC;IAGnE,QAAQ,aAAa;IACrB,eAAe,oBAAoB;IACnC,eAAe,oBAAoB;IACnC,aAAa,kBAAkB;IAC/B,qBAAqB,0BAA0B;IAC/C,aAAa,kBAAkB;IAC/B,QAAQ,aAAa;IACrB,eAAe,oBAAoB;IACnC,aAAa,kBAAkB;IAC/B,YAAY,iBAAiB;CAC9B"}
1
+ {"version":3,"file":"Rule.d.ts","sourceRoot":"","sources":["../../../../src/presentation-common/rules/Rule.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,+BAA+B,EAAE,MAAM,2CAA2C,CAAC;AAC5F,OAAO,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAC;AACtE,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AACtE,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,2BAA2B,EAAE,MAAM,wBAAwB,CAAC;AAErE;;;GAGG;AACH,MAAM,WAAW,QAAQ;IACvB,oCAAoC;IACpC,QAAQ,EAAE,SAAS,CAAC;IAEpB;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;;OAGG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAE3B;;;OAGG;IACH,eAAe,CAAC,EAAE,2BAA2B,EAAE,CAAC;CACjD;AAED;;;GAGG;AACH,MAAM,CAAC,OAAO,MAAM,IAAI,GAAG,iBAAiB,GAAG,cAAc,GAAG,WAAW,GAAG,eAAe,GAAG,+BAA+B,CAAC;AAEhI;;;;;;;GAOG;AACH,MAAM,WAAW,kBAAkB;IACjC;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;GAGG;AACH,oBAAY,SAAS;IAEnB,SAAS,cAAc;IACvB,UAAU,eAAe;IAGzB,OAAO,YAAY;IACnB,eAAe,oBAAoB;IACnC,+BAA+B,oCAAoC;IAGnE,QAAQ,aAAa;IACrB,eAAe,oBAAoB;IACnC,eAAe,oBAAoB;IACnC,aAAa,kBAAkB;IAC/B,qBAAqB,0BAA0B;IAC/C,aAAa,kBAAkB;IAC/B,QAAQ,aAAa;IACrB,eAAe,oBAAoB;IACnC,aAAa,kBAAkB;IAC/B,YAAY,iBAAiB;CAC9B"}
@@ -1 +1 @@
1
- {"version":3,"file":"Rule.js","sourceRoot":"","sources":["../../../../src/presentation-common/rules/Rule.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AA4DH;;;GAGG;AACH,IAAY,SAqBX;AArBD,WAAY,SAAS;IACnB,kBAAkB;IAClB,oCAAuB,CAAA;IACvB,sCAAyB,CAAA;IAEzB,gBAAgB;IAChB,gCAAmB,CAAA;IACnB,gDAAmC,CAAA;IACnC,gFAAmE,CAAA;IAEnE,sBAAsB;IACtB,kCAAqB,CAAA;IACrB,gDAAmC,CAAA;IACnC,gDAAmC,CAAA;IACnC,4CAA+B,CAAA;IAC/B,4DAA+C,CAAA;IAC/C,4CAA+B,CAAA;IAC/B,kCAAqB,CAAA;IACrB,gDAAmC,CAAA;IACnC,4CAA+B,CAAA;IAC/B,0CAA6B,CAAA;AAC/B,CAAC,EArBW,SAAS,GAAT,iBAAS,KAAT,iBAAS,QAqBpB","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 PresentationRules\r\n */\r\n\r\nimport { ContentRule } from \"./content/ContentRule\";\r\nimport { DefaultPropertyCategoryOverride } from \"./content/DefaultPropertyCategoryOverride\";\r\nimport { ContentModifier } from \"./content/modifiers/ContentModifier\";\r\nimport { CustomizationRule } from \"./customization/CustomizationRule\";\r\nimport { NavigationRule } from \"./hierarchy/NavigationRule\";\r\nimport { RequiredSchemaSpecification } from \"./SchemasSpecification\";\r\n\r\n/**\r\n * Base interface for all [[Rule]] implementations. Not meant\r\n * to be used directly, see `Rule`.\r\n *\r\n * @public\r\n */\r\nexport interface RuleBase {\r\n /** Used for serializing to JSON. */\r\n ruleType: RuleTypes;\r\n\r\n /**\r\n * Defines the order in which presentation rules will be evaluated and executed. Defaults to `1000`.\r\n *\r\n * @type integer\r\n */\r\n priority?: number;\r\n\r\n /**\r\n * Should this rule should be ignored if there is already an existing\r\n * rule with a higher priority.\r\n */\r\n onlyIfNotHandled?: boolean;\r\n\r\n /**\r\n * Schema requirements for this rule. The rule is not used if the requirements are not met.\r\n * @beta\r\n */\r\n requiredSchemas?: RequiredSchemaSpecification[];\r\n}\r\n\r\n/**\r\n * Presentation rules allow configuring the hierarchy and content.\r\n * @public\r\n */\r\nexport declare type Rule = CustomizationRule | NavigationRule | ContentRule | ContentModifier | DefaultPropertyCategoryOverride;\r\n\r\n/**\r\n * Container of a [[condition]] property. Used for rules that support conditions. Not\r\n * meant to be used directly, see `Rule`.\r\n *\r\n * @public\r\n */\r\nexport interface ConditionContainer {\r\n /**\r\n * Defines a condition for the rule, which needs to be met in order to execute it. Condition\r\n * is an [ECExpression]($docs/presentation/Advanced/ECExpressions.md), which can use\r\n * a limited set of symbols (depends on specific `ConditionContainer`).\r\n */\r\n condition?: string;\r\n}\r\n\r\n/**\r\n * Used for serializing [[Rule]] objects to JSON.\r\n * @public\r\n */\r\nexport enum RuleTypes {\r\n // hierarchy rules\r\n RootNodes = \"RootNodes\",\r\n ChildNodes = \"ChildNodes\",\r\n\r\n // content rules\r\n Content = \"Content\",\r\n ContentModifier = \"ContentModifier\", // eslint-disable-line @typescript-eslint/no-shadow\r\n DefaultPropertyCategoryOverride = \"DefaultPropertyCategoryOverride\", // eslint-disable-line @typescript-eslint/no-shadow\r\n\r\n // customization rules\r\n Grouping = \"Grouping\",\r\n PropertySorting = \"PropertySorting\",\r\n DisabledSorting = \"DisabledSorting\",\r\n NodeArtifacts = \"NodeArtifacts\",\r\n InstanceLabelOverride = \"InstanceLabelOverride\",\r\n LabelOverride = \"LabelOverride\",\r\n CheckBox = \"CheckBox\",\r\n ImageIdOverride = \"ImageIdOverride\",\r\n StyleOverride = \"StyleOverride\",\r\n ExtendedData = \"ExtendedData\",\r\n}\r\n"]}
1
+ {"version":3,"file":"Rule.js","sourceRoot":"","sources":["../../../../src/presentation-common/rules/Rule.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AA2DH;;;GAGG;AACH,IAAY,SAqBX;AArBD,WAAY,SAAS;IACnB,kBAAkB;IAClB,oCAAuB,CAAA;IACvB,sCAAyB,CAAA;IAEzB,gBAAgB;IAChB,gCAAmB,CAAA;IACnB,gDAAmC,CAAA;IACnC,gFAAmE,CAAA;IAEnE,sBAAsB;IACtB,kCAAqB,CAAA;IACrB,gDAAmC,CAAA;IACnC,gDAAmC,CAAA;IACnC,4CAA+B,CAAA;IAC/B,4DAA+C,CAAA;IAC/C,4CAA+B,CAAA;IAC/B,kCAAqB,CAAA;IACrB,gDAAmC,CAAA;IACnC,4CAA+B,CAAA;IAC/B,0CAA6B,CAAA;AAC/B,CAAC,EArBW,SAAS,GAAT,iBAAS,KAAT,iBAAS,QAqBpB","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 PresentationRules\r\n */\r\n\r\nimport { ContentRule } from \"./content/ContentRule\";\r\nimport { DefaultPropertyCategoryOverride } from \"./content/DefaultPropertyCategoryOverride\";\r\nimport { ContentModifier } from \"./content/modifiers/ContentModifier\";\r\nimport { CustomizationRule } from \"./customization/CustomizationRule\";\r\nimport { NavigationRule } from \"./hierarchy/NavigationRule\";\r\nimport { RequiredSchemaSpecification } from \"./SchemasSpecification\";\r\n\r\n/**\r\n * Base interface for all [[Rule]] implementations.\r\n * @public\r\n */\r\nexport interface RuleBase {\r\n /** Used for serializing to JSON. */\r\n ruleType: RuleTypes;\r\n\r\n /**\r\n * Defines the order in which rules are handled, higher number means the rule is handled first. If priorities are\r\n * equal, the rules are handled in the order they're defined.\r\n *\r\n * @type integer\r\n */\r\n priority?: number;\r\n\r\n /**\r\n * Tells the library that the rule should only be handled if no other rule of the same type was handled previously (based on rule\r\n * priorities and definition order). This allows adding fallback rules which can be overriden by higher-priority rules.\r\n */\r\n onlyIfNotHandled?: boolean;\r\n\r\n /**\r\n * A list of [ECSchema requirements]($docs/presentation/RequiredSchemaSpecification.md) that need to be met for the rule to be used.\r\n * @beta\r\n */\r\n requiredSchemas?: RequiredSchemaSpecification[];\r\n}\r\n\r\n/**\r\n * A union of all presentation rule types.\r\n * @public\r\n */\r\nexport declare type Rule = CustomizationRule | NavigationRule | ContentRule | ContentModifier | DefaultPropertyCategoryOverride;\r\n\r\n/**\r\n * Container of a [[condition]] property. Used for rules that support conditions. Not\r\n * meant to be used directly, see [[Rule]].\r\n *\r\n * @deprecated This interface is not used anymore. All interfaces that used to extend it, have the [[condition]]\r\n * attribute of their own.\r\n * @public\r\n */\r\nexport interface ConditionContainer {\r\n /**\r\n * Defines a condition for the rule, which needs to be met in order to execute it.\r\n */\r\n condition?: string;\r\n}\r\n\r\n/**\r\n * Used for serializing [[Rule]] objects to JSON.\r\n * @public\r\n */\r\nexport enum RuleTypes {\r\n // hierarchy rules\r\n RootNodes = \"RootNodes\",\r\n ChildNodes = \"ChildNodes\",\r\n\r\n // content rules\r\n Content = \"Content\",\r\n ContentModifier = \"ContentModifier\", // eslint-disable-line @typescript-eslint/no-shadow\r\n DefaultPropertyCategoryOverride = \"DefaultPropertyCategoryOverride\", // eslint-disable-line @typescript-eslint/no-shadow\r\n\r\n // customization rules\r\n Grouping = \"Grouping\",\r\n PropertySorting = \"PropertySorting\",\r\n DisabledSorting = \"DisabledSorting\",\r\n NodeArtifacts = \"NodeArtifacts\",\r\n InstanceLabelOverride = \"InstanceLabelOverride\",\r\n LabelOverride = \"LabelOverride\",\r\n CheckBox = \"CheckBox\",\r\n ImageIdOverride = \"ImageIdOverride\",\r\n StyleOverride = \"StyleOverride\",\r\n ExtendedData = \"ExtendedData\",\r\n}\r\n"]}
@@ -6,15 +6,16 @@ import { RequiredSchemaSpecification } from "./SchemasSpecification";
6
6
  import { VariablesGroup } from "./Variables";
7
7
  /**
8
8
  * Presentation ruleset is a list of rules that define tree hierarchy and content provided by
9
- * the presentation manager. The ruleset consists of:
9
+ * the presentation library. The ruleset consists of:
10
10
  * - Ruleset options
11
- * - Navigation rules:
11
+ * - Hierarchy rules:
12
12
  * - Root node rules
13
13
  * - Child node rules
14
- * - Content rules for content you see in content controls
14
+ * - Content rules for content you see in content controls like property grid and table.
15
15
  * - Customization rules used for additional customizations such as styling, labeling, checkboxes, etc.
16
16
  * - User-controllable variables.
17
17
  *
18
+ * @see [Presentation library documentation page]($docs/presentation/index.md)
18
19
  * @public
19
20
  */
20
21
  export interface Ruleset {
@@ -30,7 +31,7 @@ export interface Ruleset {
30
31
  * Setting the version is optional, but might be useful when ruleset is persisted
31
32
  * somewhere and evolves over time. Having a version helps choose persisting
32
33
  * strategy (keep all versions or only latest) and find the latest ruleset from a list
33
- * of ruleset with the same id.
34
+ * of rulesets with the same id.
34
35
  *
35
36
  * Defaults to `0.0.0`.
36
37
  *
@@ -52,7 +53,7 @@ export interface Ruleset {
52
53
  }
53
54
  /**
54
55
  * Contains supplementation-related information for
55
- * [supplemental rulesets]($docs/presentation/Advanced/RulesetSupplementation.md).
56
+ * [supplemental rulesets]($docs/presentation/advanced/RulesetSupplementation.md).
56
57
  *
57
58
  * @public
58
59
  */
@@ -1 +1 @@
1
- {"version":3,"file":"Ruleset.d.ts","sourceRoot":"","sources":["../../../../src/presentation-common/rules/Ruleset.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EAAE,2BAA2B,EAAE,MAAM,wBAAwB,CAAC;AACrE,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAE7C;;;;;;;;;;;;GAYG;AACH,MAAM,WAAW,OAAO;IACtB;;;;OAIG;IACH,EAAE,EAAE,MAAM,CAAC;IAEX;;;;;;;;;;;;OAYG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;;OAGG;IACH,eAAe,CAAC,EAAE,2BAA2B,EAAE,CAAC;IAEhD,2DAA2D;IAC3D,mBAAmB,CAAC,EAAE,mBAAmB,CAAC;IAE1C,6CAA6C;IAC7C,IAAI,CAAC,EAAE,cAAc,EAAE,CAAC;IAExB,gEAAgE;IAChE,KAAK,EAAE,IAAI,EAAE,CAAC;CACf;AAED;;;;;GAKG;AACH,MAAM,WAAW,mBAAmB;IAClC;;;OAGG;IACH,sBAAsB,EAAE,MAAM,CAAC;CAChC"}
1
+ {"version":3,"file":"Ruleset.d.ts","sourceRoot":"","sources":["../../../../src/presentation-common/rules/Ruleset.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EAAE,2BAA2B,EAAE,MAAM,wBAAwB,CAAC;AACrE,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAE7C;;;;;;;;;;;;;GAaG;AACH,MAAM,WAAW,OAAO;IACtB;;;;OAIG;IACH,EAAE,EAAE,MAAM,CAAC;IAEX;;;;;;;;;;;;OAYG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;;OAGG;IACH,eAAe,CAAC,EAAE,2BAA2B,EAAE,CAAC;IAEhD,2DAA2D;IAC3D,mBAAmB,CAAC,EAAE,mBAAmB,CAAC;IAE1C,6CAA6C;IAC7C,IAAI,CAAC,EAAE,cAAc,EAAE,CAAC;IAExB,gEAAgE;IAChE,KAAK,EAAE,IAAI,EAAE,CAAC;CACf;AAED;;;;;GAKG;AACH,MAAM,WAAW,mBAAmB;IAClC;;;OAGG;IACH,sBAAsB,EAAE,MAAM,CAAC;CAChC"}
@@ -1 +1 @@
1
- {"version":3,"file":"Ruleset.js","sourceRoot":"","sources":["../../../../src/presentation-common/rules/Ruleset.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG","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 PresentationRules\r\n */\r\n\r\nimport { Rule } from \"./Rule\";\r\nimport { RequiredSchemaSpecification } from \"./SchemasSpecification\";\r\nimport { VariablesGroup } from \"./Variables\";\r\n\r\n/**\r\n * Presentation ruleset is a list of rules that define tree hierarchy and content provided by\r\n * the presentation manager. The ruleset consists of:\r\n * - Ruleset options\r\n * - Navigation rules:\r\n * - Root node rules\r\n * - Child node rules\r\n * - Content rules for content you see in content controls\r\n * - Customization rules used for additional customizations such as styling, labeling, checkboxes, etc.\r\n * - User-controllable variables.\r\n *\r\n * @public\r\n */\r\nexport interface Ruleset {\r\n /**\r\n * Ruleset identifier. This ID is used to bind UI components with the specific rule set.\r\n *\r\n * @minLength 1\r\n */\r\n id: string;\r\n\r\n /**\r\n * Version of the presentation ruleset in SemVer format: `{major}.{minor}.{patch}`.\r\n *\r\n * Setting the version is optional, but might be useful when ruleset is persisted\r\n * somewhere and evolves over time. Having a version helps choose persisting\r\n * strategy (keep all versions or only latest) and find the latest ruleset from a list\r\n * of ruleset with the same id.\r\n *\r\n * Defaults to `0.0.0`.\r\n *\r\n * @pattern ^[\\d]+\\.[\\d]+\\.[\\d]+$\r\n * @beta\r\n */\r\n version?: string;\r\n\r\n /**\r\n * Schema requirements for this ruleset. The ruleset is not used if the requirements are not met.\r\n * @beta\r\n */\r\n requiredSchemas?: RequiredSchemaSpecification[];\r\n\r\n /** Supplementation-related information for this ruleset */\r\n supplementationInfo?: SupplementationInfo;\r\n\r\n /** User-controllable variable definitions */\r\n vars?: VariablesGroup[];\r\n\r\n /** Presentation rules used to create hierarchies and content */\r\n rules: Rule[];\r\n}\r\n\r\n/**\r\n * Contains supplementation-related information for\r\n * [supplemental rulesets]($docs/presentation/Advanced/RulesetSupplementation.md).\r\n *\r\n * @public\r\n */\r\nexport interface SupplementationInfo {\r\n /**\r\n * Identifies why supplementation is done and uniquely identifies particular supplemental ruleset.\r\n * There can be only one supplemental rule set with the same [[Ruleset.id]] and [[supplementationPurpose]].\r\n */\r\n supplementationPurpose: string;\r\n}\r\n"]}
1
+ {"version":3,"file":"Ruleset.js","sourceRoot":"","sources":["../../../../src/presentation-common/rules/Ruleset.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG","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 PresentationRules\r\n */\r\n\r\nimport { Rule } from \"./Rule\";\r\nimport { RequiredSchemaSpecification } from \"./SchemasSpecification\";\r\nimport { VariablesGroup } from \"./Variables\";\r\n\r\n/**\r\n * Presentation ruleset is a list of rules that define tree hierarchy and content provided by\r\n * the presentation library. The ruleset consists of:\r\n * - Ruleset options\r\n * - Hierarchy rules:\r\n * - Root node rules\r\n * - Child node rules\r\n * - Content rules for content you see in content controls like property grid and table.\r\n * - Customization rules used for additional customizations such as styling, labeling, checkboxes, etc.\r\n * - User-controllable variables.\r\n *\r\n * @see [Presentation library documentation page]($docs/presentation/index.md)\r\n * @public\r\n */\r\nexport interface Ruleset {\r\n /**\r\n * Ruleset identifier. This ID is used to bind UI components with the specific rule set.\r\n *\r\n * @minLength 1\r\n */\r\n id: string;\r\n\r\n /**\r\n * Version of the presentation ruleset in SemVer format: `{major}.{minor}.{patch}`.\r\n *\r\n * Setting the version is optional, but might be useful when ruleset is persisted\r\n * somewhere and evolves over time. Having a version helps choose persisting\r\n * strategy (keep all versions or only latest) and find the latest ruleset from a list\r\n * of rulesets with the same id.\r\n *\r\n * Defaults to `0.0.0`.\r\n *\r\n * @pattern ^[\\d]+\\.[\\d]+\\.[\\d]+$\r\n * @beta\r\n */\r\n version?: string;\r\n\r\n /**\r\n * Schema requirements for this ruleset. The ruleset is not used if the requirements are not met.\r\n * @beta\r\n */\r\n requiredSchemas?: RequiredSchemaSpecification[];\r\n\r\n /** Supplementation-related information for this ruleset */\r\n supplementationInfo?: SupplementationInfo;\r\n\r\n /** User-controllable variable definitions */\r\n vars?: VariablesGroup[];\r\n\r\n /** Presentation rules used to create hierarchies and content */\r\n rules: Rule[];\r\n}\r\n\r\n/**\r\n * Contains supplementation-related information for\r\n * [supplemental rulesets]($docs/presentation/advanced/RulesetSupplementation.md).\r\n *\r\n * @public\r\n */\r\nexport interface SupplementationInfo {\r\n /**\r\n * Identifies why supplementation is done and uniquely identifies particular supplemental ruleset.\r\n * There can be only one supplemental rule set with the same [[Ruleset.id]] and [[supplementationPurpose]].\r\n */\r\n supplementationPurpose: string;\r\n}\r\n"]}
@@ -15,11 +15,14 @@ export interface SchemasSpecification {
15
15
  isExclude?: boolean;
16
16
  }
17
17
  /**
18
- * A specification for a schema requirement.
18
+ * This specification is designed for specifying schema requirements for the [[Ruleset]] or specific
19
+ * presentation rules.
20
+ *
21
+ * @see [Required schema specification reference documentation page]($docs/presentation/RequiredSchemaSpecification.md)
19
22
  * @beta
20
23
  */
21
24
  export interface RequiredSchemaSpecification {
22
- /** ECSchema name */
25
+ /** Specifies the schema to whom the requirement is being set. */
23
26
  name: string;
24
27
  /**
25
28
  * Minimum required schema version (inclusive).
@@ -1 +1 @@
1
- {"version":3,"file":"SchemasSpecification.d.ts","sourceRoot":"","sources":["../../../../src/presentation-common/rules/SchemasSpecification.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH;;;GAGG;AACH,MAAM,WAAW,oBAAoB;IACnC,qBAAqB;IACrB,WAAW,EAAE,MAAM,EAAE,CAAC;IAEtB;;;OAGG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED;;;GAGG;AACH,MAAM,WAAW,2BAA2B;IAC1C,oBAAoB;IACpB,IAAI,EAAE,MAAM,CAAC;IAEb;;;;;OAKG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;;;;OAKG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB"}
1
+ {"version":3,"file":"SchemasSpecification.d.ts","sourceRoot":"","sources":["../../../../src/presentation-common/rules/SchemasSpecification.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH;;;GAGG;AACH,MAAM,WAAW,oBAAoB;IACnC,qBAAqB;IACrB,WAAW,EAAE,MAAM,EAAE,CAAC;IAEtB;;;OAGG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED;;;;;;GAMG;AACH,MAAM,WAAW,2BAA2B;IAC1C,iEAAiE;IACjE,IAAI,EAAE,MAAM,CAAC;IAEb;;;;;OAKG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;;;;OAKG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB"}
@@ -1 +1 @@
1
- {"version":3,"file":"SchemasSpecification.js","sourceRoot":"","sources":["../../../../src/presentation-common/rules/SchemasSpecification.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG","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 PresentationRules\r\n */\r\n\r\n/**\r\n * Specification for a list of ECSchemas\r\n * @public\r\n */\r\nexport interface SchemasSpecification {\r\n /** ECSchema names */\r\n schemaNames: string[];\r\n\r\n /**\r\n * Should schemas specified in [[schemaNames]] be excluded rather than included.\r\n * Exclusion works by including everything except what's specified in [[schemaNames]].\r\n */\r\n isExclude?: boolean;\r\n}\r\n\r\n/**\r\n * A specification for a schema requirement.\r\n * @beta\r\n */\r\nexport interface RequiredSchemaSpecification {\r\n /** ECSchema name */\r\n name: string;\r\n\r\n /**\r\n * Minimum required schema version (inclusive).\r\n * Format: `{read version}.{write version}.{minor version}`, e.g. `2.1.15`.\r\n *\r\n * @pattern ^[\\d]+\\.[\\d]+\\.[\\d]+$\r\n */\r\n minVersion?: string;\r\n\r\n /**\r\n * Maximum allowed schema version (exclusive).\r\n * Format: `{read version}.{write version}.{minor version}`, e.g. `2.1.15`.\r\n *\r\n * @pattern ^[\\d]+\\.[\\d]+\\.[\\d]+$\r\n */\r\n maxVersion?: string;\r\n}\r\n"]}
1
+ {"version":3,"file":"SchemasSpecification.js","sourceRoot":"","sources":["../../../../src/presentation-common/rules/SchemasSpecification.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG","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 PresentationRules\r\n */\r\n\r\n/**\r\n * Specification for a list of ECSchemas\r\n * @public\r\n */\r\nexport interface SchemasSpecification {\r\n /** ECSchema names */\r\n schemaNames: string[];\r\n\r\n /**\r\n * Should schemas specified in [[schemaNames]] be excluded rather than included.\r\n * Exclusion works by including everything except what's specified in [[schemaNames]].\r\n */\r\n isExclude?: boolean;\r\n}\r\n\r\n/**\r\n * This specification is designed for specifying schema requirements for the [[Ruleset]] or specific\r\n * presentation rules.\r\n *\r\n * @see [Required schema specification reference documentation page]($docs/presentation/RequiredSchemaSpecification.md)\r\n * @beta\r\n */\r\nexport interface RequiredSchemaSpecification {\r\n /** Specifies the schema to whom the requirement is being set. */\r\n name: string;\r\n\r\n /**\r\n * Minimum required schema version (inclusive).\r\n * Format: `{read version}.{write version}.{minor version}`, e.g. `2.1.15`.\r\n *\r\n * @pattern ^[\\d]+\\.[\\d]+\\.[\\d]+$\r\n */\r\n minVersion?: string;\r\n\r\n /**\r\n * Maximum allowed schema version (exclusive).\r\n * Format: `{read version}.{write version}.{minor version}`, e.g. `2.1.15`.\r\n *\r\n * @pattern ^[\\d]+\\.[\\d]+\\.[\\d]+$\r\n */\r\n maxVersion?: string;\r\n}\r\n"]}
@@ -5,7 +5,7 @@
5
5
  * Presentation rules support variables that allow having additional customization of the hierarchy
6
6
  * and content based on variables whose values can change during application session.
7
7
  *
8
- * There are [special ECExpression symbols]($docs/presentation/Advanced/ECExpressions.md#ruleset-variables-user-settings)
8
+ * There are [special ECExpression symbols]($docs/presentation/advanced/ECExpressions.md#ruleset-variables-user-settings)
9
9
  * that can be used to access variables by their ID, so rule conditions can check for a value and change
10
10
  * the behavior. It allows showing / hiding some nodes in the hierarchy, change the grouping, etc.
11
11
  *
@@ -14,7 +14,7 @@
14
14
  export interface VariablesGroup {
15
15
  /**
16
16
  * Group label to display in the UI.
17
- * May be [localized]($docs/presentation/Advanced/Localization.md).
17
+ * May be [localized]($docs/presentation/advanced/Localization.md).
18
18
  */
19
19
  label: string;
20
20
  /** Grouped variables */
@@ -45,7 +45,7 @@ export interface Variable {
45
45
  id: string;
46
46
  /**
47
47
  * Label of the variable that is shown in the UI.
48
- * May be [localized]($docs/presentation/Advanced/Localization.md).
48
+ * May be [localized]($docs/presentation/advanced/Localization.md).
49
49
  */
50
50
  label: string;
51
51
  /** Defines value type. Defaults to [[VariableValueType.YesNo]]. */
@@ -1 +1 @@
1
- {"version":3,"file":"Variables.js","sourceRoot":"","sources":["../../../../src/presentation-common/rules/Variables.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AA0BH;;;GAGG;AACH,IAAY,iBAYX;AAZD,WAAY,iBAAiB;IAC3B,uDAAuD;IACvD,oCAAe,CAAA;IAEf,0DAA0D;IAC1D,0CAAqB,CAAA;IAErB,uBAAuB;IACvB,2CAAsB,CAAA;IAEtB,wBAAwB;IACxB,qCAAgB,CAAA;AAClB,CAAC,EAZW,iBAAiB,GAAjB,yBAAiB,KAAjB,yBAAiB,QAY5B","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 PresentationRules\r\n */\r\n\r\n/**\r\n * Presentation rules support variables that allow having additional customization of the hierarchy\r\n * and content based on variables whose values can change during application session.\r\n *\r\n * There are [special ECExpression symbols]($docs/presentation/Advanced/ECExpressions.md#ruleset-variables-user-settings)\r\n * that can be used to access variables by their ID, so rule conditions can check for a value and change\r\n * the behavior. It allows showing / hiding some nodes in the hierarchy, change the grouping, etc.\r\n *\r\n * @public\r\n */\r\nexport interface VariablesGroup {\r\n /**\r\n * Group label to display in the UI.\r\n * May be [localized]($docs/presentation/Advanced/Localization.md).\r\n */\r\n label: string;\r\n\r\n /** Grouped variables */\r\n vars: Variable[];\r\n\r\n /** Nested variable groups. */\r\n nestedGroups?: VariablesGroup[];\r\n}\r\n\r\n/**\r\n * Available value types of user-controllable variables\r\n * @public\r\n */\r\nexport enum VariableValueType {\r\n /** Bool value, that uses Yes / No strings in the UI */\r\n YesNo = \"YesNo\",\r\n\r\n /** Bool value, that uses Show / Hide strings in the UI */\r\n ShowHide = \"ShowHide\",\r\n\r\n /** Any string value */\r\n String = \"StringValue\",\r\n\r\n /** Any integer value */\r\n Int = \"IntValue\",\r\n}\r\n\r\n/**\r\n * Definition for single user-controllable variable\r\n * @public\r\n */\r\nexport interface Variable {\r\n /** Id of the variable */\r\n id: string;\r\n\r\n /**\r\n * Label of the variable that is shown in the UI.\r\n * May be [localized]($docs/presentation/Advanced/Localization.md).\r\n */\r\n label: string;\r\n\r\n /** Defines value type. Defaults to [[VariableValueType.YesNo]]. */\r\n type?: VariableValueType;\r\n\r\n /** Default value. */\r\n defaultValue?: string;\r\n}\r\n"]}
1
+ {"version":3,"file":"Variables.js","sourceRoot":"","sources":["../../../../src/presentation-common/rules/Variables.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AA0BH;;;GAGG;AACH,IAAY,iBAYX;AAZD,WAAY,iBAAiB;IAC3B,uDAAuD;IACvD,oCAAe,CAAA;IAEf,0DAA0D;IAC1D,0CAAqB,CAAA;IAErB,uBAAuB;IACvB,2CAAsB,CAAA;IAEtB,wBAAwB;IACxB,qCAAgB,CAAA;AAClB,CAAC,EAZW,iBAAiB,GAAjB,yBAAiB,KAAjB,yBAAiB,QAY5B","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 PresentationRules\r\n */\r\n\r\n/**\r\n * Presentation rules support variables that allow having additional customization of the hierarchy\r\n * and content based on variables whose values can change during application session.\r\n *\r\n * There are [special ECExpression symbols]($docs/presentation/advanced/ECExpressions.md#ruleset-variables-user-settings)\r\n * that can be used to access variables by their ID, so rule conditions can check for a value and change\r\n * the behavior. It allows showing / hiding some nodes in the hierarchy, change the grouping, etc.\r\n *\r\n * @public\r\n */\r\nexport interface VariablesGroup {\r\n /**\r\n * Group label to display in the UI.\r\n * May be [localized]($docs/presentation/advanced/Localization.md).\r\n */\r\n label: string;\r\n\r\n /** Grouped variables */\r\n vars: Variable[];\r\n\r\n /** Nested variable groups. */\r\n nestedGroups?: VariablesGroup[];\r\n}\r\n\r\n/**\r\n * Available value types of user-controllable variables\r\n * @public\r\n */\r\nexport enum VariableValueType {\r\n /** Bool value, that uses Yes / No strings in the UI */\r\n YesNo = \"YesNo\",\r\n\r\n /** Bool value, that uses Show / Hide strings in the UI */\r\n ShowHide = \"ShowHide\",\r\n\r\n /** Any string value */\r\n String = \"StringValue\",\r\n\r\n /** Any integer value */\r\n Int = \"IntValue\",\r\n}\r\n\r\n/**\r\n * Definition for single user-controllable variable\r\n * @public\r\n */\r\nexport interface Variable {\r\n /** Id of the variable */\r\n id: string;\r\n\r\n /**\r\n * Label of the variable that is shown in the UI.\r\n * May be [localized]($docs/presentation/advanced/Localization.md).\r\n */\r\n label: string;\r\n\r\n /** Defines value type. Defaults to [[VariableValueType.YesNo]]. */\r\n type?: VariableValueType;\r\n\r\n /** Default value. */\r\n defaultValue?: string;\r\n}\r\n"]}
@@ -4,40 +4,38 @@
4
4
  import { MultiSchemaClassesSpecification } from "../ClassSpecifications";
5
5
  import { ContentSpecificationBase, ContentSpecificationTypes } from "./ContentSpecification";
6
6
  /**
7
- * Creates content for ECInstance(s) of specified classes.
7
+ * This specification creates content for all instances of specific ECClasses.
8
8
  *
9
- * **Note**: this specification doesn't rely on selection. It always returns instances no matter
10
- * what the selection is, so pre-filtering should be done in [[ContentRule]] condition and [[instanceFilter]].
11
- *
12
- * @see [More details]($docs/presentation/Content/ContentInstancesOfSpecificClasses.md)
9
+ * @see [Content instances of specific classes specification reference documentation page]($docs/presentation/content/ContentInstancesOfSpecificClasses.md)
13
10
  * @public
14
11
  */
15
12
  export interface ContentInstancesOfSpecificClassesSpecification extends ContentSpecificationBase {
16
13
  /** Used for serializing to JSON. */
17
14
  specType: ContentSpecificationTypes.ContentInstancesOfSpecificClasses;
18
15
  /**
19
- * List of ECClass specifications whose ECInstances should be selected.
16
+ * Defines a set of [multi schema classes]($docs/presentation/MultiSchemaClassesSpecification.md) that specify which
17
+ * ECClasses need to be selected to form the result.
20
18
  */
21
19
  classes: MultiSchemaClassesSpecification | MultiSchemaClassesSpecification[];
22
20
  /**
23
- * List of ECClass specifications whose ECInstances should be excluded.
21
+ * Defines a set of [multi schema classes]($docs/presentation/MultiSchemaClassesSpecification.md) that prevents specified
22
+ * ECClasses and subclasses from being selected by [[classes]] attribute.
24
23
  */
25
24
  excludedClasses?: MultiSchemaClassesSpecification | MultiSchemaClassesSpecification[];
26
25
  /**
27
- * Whether to get content from instances of derived `classes`.
28
- * Acts as default value for [[classes.arePolymorphic]] and [[excludedClasses.arePolymorphic]].
26
+ * Tells whether selecting instances from ECClasses specified in [[classes]] and [[excludedClasses]]
27
+ * attributes should be polymorphic or not.
28
+ *
29
29
  * @deprecated Specify polymorphism value inside [[classes.arePolymorphic]] or [[excludedClasses.arePolymorphic]].
30
30
  */
31
31
  handleInstancesPolymorphically?: boolean;
32
32
  /**
33
- * Whether to get content from properties of derived `classes`. If `true`, properties from `classes` with no instances
34
- * do not appear in the result set.
33
+ * Specifies whether properties of derived [[classes]] should be included in the content.
35
34
  */
36
35
  handlePropertiesPolymorphically?: boolean;
37
36
  /**
38
- * Condition for filtering instances of defined classes.
39
- *
40
- * **See:** [ECExpressions available in instance filter]($docs/presentation/Content/ECExpressions.md#instance-filter)
37
+ * Specifies an [ECExpression]($docs/presentation/content/ECExpressions.md#instance-filter) for filtering instances
38
+ * of ECClasses specified through the [[classes]] attribute.
41
39
  */
42
40
  instanceFilter?: string;
43
41
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ContentInstancesOfSpecificClassesSpecification.d.ts","sourceRoot":"","sources":["../../../../../src/presentation-common/rules/content/ContentInstancesOfSpecificClassesSpecification.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAE,+BAA+B,EAAE,MAAM,wBAAwB,CAAC;AACzE,OAAO,EAAE,wBAAwB,EAAE,yBAAyB,EAAE,MAAM,wBAAwB,CAAC;AAE7F;;;;;;;;GAQG;AACH,MAAM,WAAW,8CAA+C,SAAQ,wBAAwB;IAC9F,oCAAoC;IACpC,QAAQ,EAAE,yBAAyB,CAAC,iCAAiC,CAAC;IAEtE;;OAEG;IACH,OAAO,EAAE,+BAA+B,GAAG,+BAA+B,EAAE,CAAC;IAE7E;;OAEG;IACH,eAAe,CAAC,EAAE,+BAA+B,GAAG,+BAA+B,EAAE,CAAC;IAEtF;;;;OAIG;IACH,8BAA8B,CAAC,EAAE,OAAO,CAAC;IAEzC;;;OAGG;IACH,+BAA+B,CAAC,EAAE,OAAO,CAAC;IAE1C;;;;OAIG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB"}
1
+ {"version":3,"file":"ContentInstancesOfSpecificClassesSpecification.d.ts","sourceRoot":"","sources":["../../../../../src/presentation-common/rules/content/ContentInstancesOfSpecificClassesSpecification.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAE,+BAA+B,EAAE,MAAM,wBAAwB,CAAC;AACzE,OAAO,EAAE,wBAAwB,EAAE,yBAAyB,EAAE,MAAM,wBAAwB,CAAC;AAE7F;;;;;GAKG;AACH,MAAM,WAAW,8CAA+C,SAAQ,wBAAwB;IAC9F,oCAAoC;IACpC,QAAQ,EAAE,yBAAyB,CAAC,iCAAiC,CAAC;IAEtE;;;OAGG;IACH,OAAO,EAAE,+BAA+B,GAAG,+BAA+B,EAAE,CAAC;IAE7E;;;OAGG;IACH,eAAe,CAAC,EAAE,+BAA+B,GAAG,+BAA+B,EAAE,CAAC;IAEtF;;;;;OAKG;IACH,8BAA8B,CAAC,EAAE,OAAO,CAAC;IAEzC;;OAEG;IACH,+BAA+B,CAAC,EAAE,OAAO,CAAC;IAE1C;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB"}
@@ -1 +1 @@
1
- {"version":3,"file":"ContentInstancesOfSpecificClassesSpecification.js","sourceRoot":"","sources":["../../../../../src/presentation-common/rules/content/ContentInstancesOfSpecificClassesSpecification.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG","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 PresentationRules\r\n */\r\n\r\nimport { MultiSchemaClassesSpecification } from \"../ClassSpecifications\";\r\nimport { ContentSpecificationBase, ContentSpecificationTypes } from \"./ContentSpecification\";\r\n\r\n/**\r\n * Creates content for ECInstance(s) of specified classes.\r\n *\r\n * **Note**: this specification doesn't rely on selection. It always returns instances no matter\r\n * what the selection is, so pre-filtering should be done in [[ContentRule]] condition and [[instanceFilter]].\r\n *\r\n * @see [More details]($docs/presentation/Content/ContentInstancesOfSpecificClasses.md)\r\n * @public\r\n */\r\nexport interface ContentInstancesOfSpecificClassesSpecification extends ContentSpecificationBase {\r\n /** Used for serializing to JSON. */\r\n specType: ContentSpecificationTypes.ContentInstancesOfSpecificClasses;\r\n\r\n /**\r\n * List of ECClass specifications whose ECInstances should be selected.\r\n */\r\n classes: MultiSchemaClassesSpecification | MultiSchemaClassesSpecification[];\r\n\r\n /**\r\n * List of ECClass specifications whose ECInstances should be excluded.\r\n */\r\n excludedClasses?: MultiSchemaClassesSpecification | MultiSchemaClassesSpecification[];\r\n\r\n /**\r\n * Whether to get content from instances of derived `classes`.\r\n * Acts as default value for [[classes.arePolymorphic]] and [[excludedClasses.arePolymorphic]].\r\n * @deprecated Specify polymorphism value inside [[classes.arePolymorphic]] or [[excludedClasses.arePolymorphic]].\r\n */\r\n handleInstancesPolymorphically?: boolean;\r\n\r\n /**\r\n * Whether to get content from properties of derived `classes`. If `true`, properties from `classes` with no instances\r\n * do not appear in the result set.\r\n */\r\n handlePropertiesPolymorphically?: boolean;\r\n\r\n /**\r\n * Condition for filtering instances of defined classes.\r\n *\r\n * **See:** [ECExpressions available in instance filter]($docs/presentation/Content/ECExpressions.md#instance-filter)\r\n */\r\n instanceFilter?: string;\r\n}\r\n"]}
1
+ {"version":3,"file":"ContentInstancesOfSpecificClassesSpecification.js","sourceRoot":"","sources":["../../../../../src/presentation-common/rules/content/ContentInstancesOfSpecificClassesSpecification.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG","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 PresentationRules\r\n */\r\n\r\nimport { MultiSchemaClassesSpecification } from \"../ClassSpecifications\";\r\nimport { ContentSpecificationBase, ContentSpecificationTypes } from \"./ContentSpecification\";\r\n\r\n/**\r\n * This specification creates content for all instances of specific ECClasses.\r\n *\r\n * @see [Content instances of specific classes specification reference documentation page]($docs/presentation/content/ContentInstancesOfSpecificClasses.md)\r\n * @public\r\n */\r\nexport interface ContentInstancesOfSpecificClassesSpecification extends ContentSpecificationBase {\r\n /** Used for serializing to JSON. */\r\n specType: ContentSpecificationTypes.ContentInstancesOfSpecificClasses;\r\n\r\n /**\r\n * Defines a set of [multi schema classes]($docs/presentation/MultiSchemaClassesSpecification.md) that specify which\r\n * ECClasses need to be selected to form the result.\r\n */\r\n classes: MultiSchemaClassesSpecification | MultiSchemaClassesSpecification[];\r\n\r\n /**\r\n * Defines a set of [multi schema classes]($docs/presentation/MultiSchemaClassesSpecification.md) that prevents specified\r\n * ECClasses and subclasses from being selected by [[classes]] attribute.\r\n */\r\n excludedClasses?: MultiSchemaClassesSpecification | MultiSchemaClassesSpecification[];\r\n\r\n /**\r\n * Tells whether selecting instances from ECClasses specified in [[classes]] and [[excludedClasses]]\r\n * attributes should be polymorphic or not.\r\n *\r\n * @deprecated Specify polymorphism value inside [[classes.arePolymorphic]] or [[excludedClasses.arePolymorphic]].\r\n */\r\n handleInstancesPolymorphically?: boolean;\r\n\r\n /**\r\n * Specifies whether properties of derived [[classes]] should be included in the content.\r\n */\r\n handlePropertiesPolymorphically?: boolean;\r\n\r\n /**\r\n * Specifies an [ECExpression]($docs/presentation/content/ECExpressions.md#instance-filter) for filtering instances\r\n * of ECClasses specified through the [[classes]] attribute.\r\n */\r\n instanceFilter?: string;\r\n}\r\n"]}
@@ -4,24 +4,22 @@
4
4
  import { RepeatableRelationshipPathSpecification } from "../RelationshipPathSpecification";
5
5
  import { ContentSpecificationBase, ContentSpecificationTypes } from "./ContentSpecification";
6
6
  /**
7
- * Creates content for ECInstance(s) related to current selection.
7
+ * Returns content for instances related to the selected (input) instances.
8
8
  *
9
- * **Note:** Use [[ContentRule.condition]] to apply specification on correct selection.
10
- *
11
- * @see [More details]($docs/presentation/Content/ContentRelatedInstances.md)
9
+ * @see [Content related instances specification reference documentation page]($docs/presentation/content/ContentRelatedInstances.md)
12
10
  * @public
13
11
  */
14
12
  export interface ContentRelatedInstancesSpecification extends ContentSpecificationBase {
15
13
  /** Used for serializing to JSON. */
16
14
  specType: ContentSpecificationTypes.ContentRelatedInstances;
17
15
  /**
18
- * Relationship paths from input (selected) instance class to content class.
16
+ * Specifies a chain of [relationship path specifications]($docs/presentation/RepeatableRelationshipPathSpecification.md) that
17
+ * forms a path from an input instance to the output instances. When this array is empty, the specification produces no results.
19
18
  */
20
19
  relationshipPaths: RepeatableRelationshipPathSpecification[];
21
20
  /**
22
- * Condition for filtering instances targeted by specified relationship paths.
23
- *
24
- * **See:** [ECExpressions available in instance filter]($docs/presentation/Content/ECExpressions.md#instance-filter)
21
+ * Specifies an [ECExpression]($docs/presentation/content/ECExpressions.md#instance-filter) for filtering instances
22
+ * of ECClasses targeted through the [[relationshipPaths]] attribute.
25
23
  */
26
24
  instanceFilter?: string;
27
25
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ContentRelatedInstancesSpecification.d.ts","sourceRoot":"","sources":["../../../../../src/presentation-common/rules/content/ContentRelatedInstancesSpecification.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAE,uCAAuC,EAAE,MAAM,kCAAkC,CAAC;AAC3F,OAAO,EAAE,wBAAwB,EAAE,yBAAyB,EAAE,MAAM,wBAAwB,CAAC;AAE7F;;;;;;;GAOG;AACH,MAAM,WAAW,oCAAqC,SAAQ,wBAAwB;IACpF,oCAAoC;IACpC,QAAQ,EAAE,yBAAyB,CAAC,uBAAuB,CAAC;IAE5D;;OAEG;IACH,iBAAiB,EAAE,uCAAuC,EAAE,CAAC;IAE7D;;;;OAIG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB"}
1
+ {"version":3,"file":"ContentRelatedInstancesSpecification.d.ts","sourceRoot":"","sources":["../../../../../src/presentation-common/rules/content/ContentRelatedInstancesSpecification.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAE,uCAAuC,EAAE,MAAM,kCAAkC,CAAC;AAC3F,OAAO,EAAE,wBAAwB,EAAE,yBAAyB,EAAE,MAAM,wBAAwB,CAAC;AAE7F;;;;;GAKG;AACH,MAAM,WAAW,oCAAqC,SAAQ,wBAAwB;IACpF,oCAAoC;IACpC,QAAQ,EAAE,yBAAyB,CAAC,uBAAuB,CAAC;IAE5D;;;OAGG;IACH,iBAAiB,EAAE,uCAAuC,EAAE,CAAC;IAE7D;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB"}
@@ -1 +1 @@
1
- {"version":3,"file":"ContentRelatedInstancesSpecification.js","sourceRoot":"","sources":["../../../../../src/presentation-common/rules/content/ContentRelatedInstancesSpecification.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG","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 PresentationRules\r\n */\r\n\r\nimport { RepeatableRelationshipPathSpecification } from \"../RelationshipPathSpecification\";\r\nimport { ContentSpecificationBase, ContentSpecificationTypes } from \"./ContentSpecification\";\r\n\r\n/**\r\n * Creates content for ECInstance(s) related to current selection.\r\n *\r\n * **Note:** Use [[ContentRule.condition]] to apply specification on correct selection.\r\n *\r\n * @see [More details]($docs/presentation/Content/ContentRelatedInstances.md)\r\n * @public\r\n */\r\nexport interface ContentRelatedInstancesSpecification extends ContentSpecificationBase {\r\n /** Used for serializing to JSON. */\r\n specType: ContentSpecificationTypes.ContentRelatedInstances;\r\n\r\n /**\r\n * Relationship paths from input (selected) instance class to content class.\r\n */\r\n relationshipPaths: RepeatableRelationshipPathSpecification[];\r\n\r\n /**\r\n * Condition for filtering instances targeted by specified relationship paths.\r\n *\r\n * **See:** [ECExpressions available in instance filter]($docs/presentation/Content/ECExpressions.md#instance-filter)\r\n */\r\n instanceFilter?: string;\r\n}\r\n"]}
1
+ {"version":3,"file":"ContentRelatedInstancesSpecification.js","sourceRoot":"","sources":["../../../../../src/presentation-common/rules/content/ContentRelatedInstancesSpecification.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG","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 PresentationRules\r\n */\r\n\r\nimport { RepeatableRelationshipPathSpecification } from \"../RelationshipPathSpecification\";\r\nimport { ContentSpecificationBase, ContentSpecificationTypes } from \"./ContentSpecification\";\r\n\r\n/**\r\n * Returns content for instances related to the selected (input) instances.\r\n *\r\n * @see [Content related instances specification reference documentation page]($docs/presentation/content/ContentRelatedInstances.md)\r\n * @public\r\n */\r\nexport interface ContentRelatedInstancesSpecification extends ContentSpecificationBase {\r\n /** Used for serializing to JSON. */\r\n specType: ContentSpecificationTypes.ContentRelatedInstances;\r\n\r\n /**\r\n * Specifies a chain of [relationship path specifications]($docs/presentation/RepeatableRelationshipPathSpecification.md) that\r\n * forms a path from an input instance to the output instances. When this array is empty, the specification produces no results.\r\n */\r\n relationshipPaths: RepeatableRelationshipPathSpecification[];\r\n\r\n /**\r\n * Specifies an [ECExpression]($docs/presentation/content/ECExpressions.md#instance-filter) for filtering instances\r\n * of ECClasses targeted through the [[relationshipPaths]] attribute.\r\n */\r\n instanceFilter?: string;\r\n}\r\n"]}
@@ -1,26 +1,31 @@
1
1
  /** @packageDocumentation
2
2
  * @module PresentationRules
3
3
  */
4
- import { ConditionContainer, RuleBase, RuleTypes } from "../Rule";
4
+ import { RuleBase, RuleTypes } from "../Rule";
5
5
  import { ContentSpecification } from "./ContentSpecification";
6
6
  /**
7
- * Defines content that's displayed in content controls (table view,
8
- * property pane, etc.) and the content that's selected in
9
- * [unified selection]($docs/presentation/unified-selection/index.md) controls
7
+ * Content rules are used to define content that is displayed for specific type of [input]($docs/presentation/content/Terminology.md#input-instance).
8
+ * Input consists of either ECInstances or [nodes]($docs/presentation/hierarchies/Terminology.md#node) and to make things
9
+ * simpler everything is considered a [node]($docs/presentation/hierarchies/Terminology.md#node) - instances get converted to
10
+ * *ECInstance nodes* (thus the `SelectedNode` symbol in [`condition` ECExpression]($docs/presentation/content/ECExpressions.md#rule-condition)).
10
11
  *
11
- * @see [More details]($docs/presentation/Content/ContentRule.md)
12
+ * @see [Content rule reference documentation page]($docs/presentation/content/ContentRule.md)
12
13
  * @public
13
14
  */
14
- export interface ContentRule extends RuleBase, ConditionContainer {
15
+ export interface ContentRule extends RuleBase {
15
16
  /** Used for serializing to JSON. */
16
17
  ruleType: RuleTypes.Content;
17
18
  /**
18
- * Defines a condition for the rule, which needs to be met in order to execute it. Condition
19
- * is an [ECExpression]($docs/presentation/Advanced/ECExpressions.md), which can use
20
- * a [limited set of symbols]($docs/presentation/Content/ECExpressions.md#rule-condition).
19
+ * Defines a condition which needs to be met in order for the rule to be used. The condition is an
20
+ * [ECExpression]($docs/presentation/content/ECExpressions.md#rule-condition) which has to evaluate to
21
+ * a boolean value.
21
22
  */
22
23
  condition?: string;
23
- /** Specifications that define content returned by the rule */
24
+ /**
25
+ * A list of content specifications that define what content is going to be returned. This is the most
26
+ * important attribute which is responsible for defining what instances' properties are included in the
27
+ * returned content.
28
+ */
24
29
  specifications: ContentSpecification[];
25
30
  }
26
31
  //# sourceMappingURL=ContentRule.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ContentRule.d.ts","sourceRoot":"","sources":["../../../../../src/presentation-common/rules/content/ContentRule.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAE,kBAAkB,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAClE,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAE9D;;;;;;;GAOG;AACH,MAAM,WAAW,WAAY,SAAQ,QAAQ,EAAE,kBAAkB;IAC/D,oCAAoC;IACpC,QAAQ,EAAE,SAAS,CAAC,OAAO,CAAC;IAE5B;;;;OAIG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,8DAA8D;IAC9D,cAAc,EAAE,oBAAoB,EAAE,CAAC;CACxC"}
1
+ {"version":3,"file":"ContentRule.d.ts","sourceRoot":"","sources":["../../../../../src/presentation-common/rules/content/ContentRule.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAC9C,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAE9D;;;;;;;;GAQG;AACH,MAAM,WAAW,WAAY,SAAQ,QAAQ;IAC3C,oCAAoC;IACpC,QAAQ,EAAE,SAAS,CAAC,OAAO,CAAC;IAE5B;;;;OAIG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;;;OAIG;IACH,cAAc,EAAE,oBAAoB,EAAE,CAAC;CACxC"}
@@ -1 +1 @@
1
- {"version":3,"file":"ContentRule.js","sourceRoot":"","sources":["../../../../../src/presentation-common/rules/content/ContentRule.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG","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 PresentationRules\r\n */\r\n\r\nimport { ConditionContainer, RuleBase, RuleTypes } from \"../Rule\";\r\nimport { ContentSpecification } from \"./ContentSpecification\";\r\n\r\n/**\r\n * Defines content that's displayed in content controls (table view,\r\n * property pane, etc.) and the content that's selected in\r\n * [unified selection]($docs/presentation/unified-selection/index.md) controls\r\n *\r\n * @see [More details]($docs/presentation/Content/ContentRule.md)\r\n * @public\r\n */\r\nexport interface ContentRule extends RuleBase, ConditionContainer {\r\n /** Used for serializing to JSON. */\r\n ruleType: RuleTypes.Content;\r\n\r\n /**\r\n * Defines a condition for the rule, which needs to be met in order to execute it. Condition\r\n * is an [ECExpression]($docs/presentation/Advanced/ECExpressions.md), which can use\r\n * a [limited set of symbols]($docs/presentation/Content/ECExpressions.md#rule-condition).\r\n */\r\n condition?: string;\r\n\r\n /** Specifications that define content returned by the rule */\r\n specifications: ContentSpecification[];\r\n}\r\n"]}
1
+ {"version":3,"file":"ContentRule.js","sourceRoot":"","sources":["../../../../../src/presentation-common/rules/content/ContentRule.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG","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 PresentationRules\r\n */\r\n\r\nimport { RuleBase, RuleTypes } from \"../Rule\";\r\nimport { ContentSpecification } from \"./ContentSpecification\";\r\n\r\n/**\r\n * Content rules are used to define content that is displayed for specific type of [input]($docs/presentation/content/Terminology.md#input-instance).\r\n * Input consists of either ECInstances or [nodes]($docs/presentation/hierarchies/Terminology.md#node) and to make things\r\n * simpler everything is considered a [node]($docs/presentation/hierarchies/Terminology.md#node) - instances get converted to\r\n * *ECInstance nodes* (thus the `SelectedNode` symbol in [`condition` ECExpression]($docs/presentation/content/ECExpressions.md#rule-condition)).\r\n *\r\n * @see [Content rule reference documentation page]($docs/presentation/content/ContentRule.md)\r\n * @public\r\n */\r\nexport interface ContentRule extends RuleBase {\r\n /** Used for serializing to JSON. */\r\n ruleType: RuleTypes.Content;\r\n\r\n /**\r\n * Defines a condition which needs to be met in order for the rule to be used. The condition is an\r\n * [ECExpression]($docs/presentation/content/ECExpressions.md#rule-condition) which has to evaluate to\r\n * a boolean value.\r\n */\r\n condition?: string;\r\n\r\n /**\r\n * A list of content specifications that define what content is going to be returned. This is the most\r\n * important attribute which is responsible for defining what instances' properties are included in the\r\n * returned content.\r\n */\r\n specifications: ContentSpecification[];\r\n}\r\n"]}
@@ -25,18 +25,24 @@ export interface ContentSpecificationBase extends ContentModifiersList {
25
25
  /** Used for serializing to JSON. */
26
26
  specType: ContentSpecificationTypes;
27
27
  /**
28
- * Defines the order in which specifications are evaluated and executed. Defaults to `1000`.
28
+ * Controls the order in which specifications are handled specification with higher priority value is handled
29
+ * first. If priorities are equal, the specifications are handled in the order they appear in the ruleset.
29
30
  *
30
31
  * @type integer
31
32
  */
32
33
  priority?: number;
33
- /** Should each content record be assigned an image id */
34
+ /**
35
+ * Should image IDs be calculated for the returned instances. When `true`, [[ImageIdOverride]] rules get applied when
36
+ * creating the content.
37
+ *
38
+ * @deprecated Use [[ExtendedDataRule]] instead. See [extended data usage page]($docs/presentation/customization/ExtendedDataUsage.md) for more details.
39
+ */
34
40
  showImages?: boolean;
35
- /** Specifications for joining related instances */
41
+ /** Specifications of [related instances]($docs/presentation/RelatedInstanceSpecification.md) that can be used when creating the content. */
36
42
  relatedInstances?: RelatedInstanceSpecification[];
37
43
  /**
38
- * Identifies whether we should ignore this specification if there is already an existing specification
39
- * with higher `priority` that already provides content.
44
+ * Specifies whether this specification should be ignored if another specification was handled before as
45
+ * determined by rule and specification priorities. This provides a mechanism for defining a fallback specification.
40
46
  */
41
47
  onlyIfNotHandled?: boolean;
42
48
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ContentSpecification.d.ts","sourceRoot":"","sources":["../../../../../src/presentation-common/rules/content/ContentSpecification.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAE,4BAA4B,EAAE,MAAM,iCAAiC,CAAC;AAC/E,OAAO,EAAE,8CAA8C,EAAE,MAAM,kDAAkD,CAAC;AAClH,OAAO,EAAE,oCAAoC,EAAE,MAAM,wCAAwC,CAAC;AAC9F,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACnE,OAAO,EAAE,kCAAkC,EAAE,MAAM,sCAAsC,CAAC;AAE1F;;;GAGG;AACH,oBAAY,yBAAyB;IACnC,iCAAiC,sCAAsC;IACvE,uBAAuB,4BAA4B;IACnD,qBAAqB,0BAA0B;CAChD;AAED;;;;;GAKG;AACH,MAAM,WAAW,wBAAyB,SAAQ,oBAAoB;IACpE,oCAAoC;IACpC,QAAQ,EAAE,yBAAyB,CAAC;IAEpC;;;;OAIG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,yDAAyD;IACzD,UAAU,CAAC,EAAE,OAAO,CAAC;IAErB,mDAAmD;IACnD,gBAAgB,CAAC,EAAE,4BAA4B,EAAE,CAAC;IAElD;;;OAGG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B;AAED;;;;;GAKG;AACH,MAAM,CAAC,OAAO,MAAM,oBAAoB,GAAG,8CAA8C,GAAG,oCAAoC,GAAG,kCAAkC,CAAC"}
1
+ {"version":3,"file":"ContentSpecification.d.ts","sourceRoot":"","sources":["../../../../../src/presentation-common/rules/content/ContentSpecification.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAE,4BAA4B,EAAE,MAAM,iCAAiC,CAAC;AAC/E,OAAO,EAAE,8CAA8C,EAAE,MAAM,kDAAkD,CAAC;AAClH,OAAO,EAAE,oCAAoC,EAAE,MAAM,wCAAwC,CAAC;AAC9F,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACnE,OAAO,EAAE,kCAAkC,EAAE,MAAM,sCAAsC,CAAC;AAE1F;;;GAGG;AACH,oBAAY,yBAAyB;IACnC,iCAAiC,sCAAsC;IACvE,uBAAuB,4BAA4B;IACnD,qBAAqB,0BAA0B;CAChD;AAED;;;;;GAKG;AACH,MAAM,WAAW,wBAAyB,SAAQ,oBAAoB;IACpE,oCAAoC;IACpC,QAAQ,EAAE,yBAAyB,CAAC;IAEpC;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;;;;OAKG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IAErB,4IAA4I;IAC5I,gBAAgB,CAAC,EAAE,4BAA4B,EAAE,CAAC;IAElD;;;OAGG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B;AAED;;;;;GAKG;AACH,MAAM,CAAC,OAAO,MAAM,oBAAoB,GAAG,8CAA8C,GAAG,oCAAoC,GAAG,kCAAkC,CAAC"}