@itwin/presentation-common 4.0.0-dev.8 → 4.0.0-dev.81

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 (441) hide show
  1. package/CHANGELOG.md +51 -1
  2. package/Ruleset.schema.json +15 -0
  3. package/lib/cjs/assets/locales/en/Presentation.json +19 -0
  4. package/lib/cjs/assets/locales/en-PSEUDO/Presentation.json +19 -0
  5. package/lib/cjs/presentation-common/AsyncTasks.d.ts +22 -22
  6. package/lib/cjs/presentation-common/AsyncTasks.js +38 -38
  7. package/lib/cjs/presentation-common/CommonLoggerCategory.d.ts +12 -12
  8. package/lib/cjs/presentation-common/CommonLoggerCategory.js +20 -20
  9. package/lib/cjs/presentation-common/Diagnostics.d.ts +125 -125
  10. package/lib/cjs/presentation-common/Diagnostics.d.ts.map +1 -1
  11. package/lib/cjs/presentation-common/Diagnostics.js +72 -72
  12. package/lib/cjs/presentation-common/EC.d.ts +347 -350
  13. package/lib/cjs/presentation-common/EC.d.ts.map +1 -1
  14. package/lib/cjs/presentation-common/EC.js +290 -290
  15. package/lib/cjs/presentation-common/EC.js.map +1 -1
  16. package/lib/cjs/presentation-common/ElementProperties.d.ts +123 -123
  17. package/lib/cjs/presentation-common/ElementProperties.d.ts.map +1 -1
  18. package/lib/cjs/presentation-common/ElementProperties.js +9 -9
  19. package/lib/cjs/presentation-common/Error.d.ts +47 -45
  20. package/lib/cjs/presentation-common/Error.d.ts.map +1 -1
  21. package/lib/cjs/presentation-common/Error.js +64 -62
  22. package/lib/cjs/presentation-common/Error.js.map +1 -1
  23. package/lib/cjs/presentation-common/InstanceFilterDefinition.d.ts +93 -93
  24. package/lib/cjs/presentation-common/InstanceFilterDefinition.d.ts.map +1 -1
  25. package/lib/cjs/presentation-common/InstanceFilterDefinition.js +9 -9
  26. package/lib/cjs/presentation-common/KeySet.d.ts +146 -146
  27. package/lib/cjs/presentation-common/KeySet.d.ts.map +1 -1
  28. package/lib/cjs/presentation-common/KeySet.js +428 -428
  29. package/lib/cjs/presentation-common/KoqPropertyValueFormatter.d.ts +20 -0
  30. package/lib/cjs/presentation-common/KoqPropertyValueFormatter.d.ts.map +1 -0
  31. package/lib/cjs/presentation-common/KoqPropertyValueFormatter.js +156 -0
  32. package/lib/cjs/presentation-common/KoqPropertyValueFormatter.js.map +1 -0
  33. package/lib/cjs/presentation-common/LabelDefinition.d.ts +93 -87
  34. package/lib/cjs/presentation-common/LabelDefinition.d.ts.map +1 -1
  35. package/lib/cjs/presentation-common/LabelDefinition.js +78 -73
  36. package/lib/cjs/presentation-common/LabelDefinition.js.map +1 -1
  37. package/lib/cjs/presentation-common/LocalizationHelper.d.ts +29 -29
  38. package/lib/cjs/presentation-common/LocalizationHelper.d.ts.map +1 -1
  39. package/lib/cjs/presentation-common/LocalizationHelper.js +113 -110
  40. package/lib/cjs/presentation-common/LocalizationHelper.js.map +1 -1
  41. package/lib/cjs/presentation-common/PresentationIpcInterface.d.ts +27 -40
  42. package/lib/cjs/presentation-common/PresentationIpcInterface.d.ts.map +1 -1
  43. package/lib/cjs/presentation-common/PresentationIpcInterface.js +12 -12
  44. package/lib/cjs/presentation-common/PresentationIpcInterface.js.map +1 -1
  45. package/lib/cjs/presentation-common/PresentationManagerOptions.d.ts +279 -261
  46. package/lib/cjs/presentation-common/PresentationManagerOptions.d.ts.map +1 -1
  47. package/lib/cjs/presentation-common/PresentationManagerOptions.js +23 -23
  48. package/lib/cjs/presentation-common/PresentationManagerOptions.js.map +1 -1
  49. package/lib/cjs/presentation-common/PresentationRpcInterface.d.ts +186 -186
  50. package/lib/cjs/presentation-common/PresentationRpcInterface.d.ts.map +1 -1
  51. package/lib/cjs/presentation-common/PresentationRpcInterface.js +108 -104
  52. package/lib/cjs/presentation-common/PresentationRpcInterface.js.map +1 -1
  53. package/lib/cjs/presentation-common/RegisteredRuleset.d.ts +26 -26
  54. package/lib/cjs/presentation-common/RegisteredRuleset.js +33 -33
  55. package/lib/cjs/presentation-common/RpcRequestsHandler.d.ts +82 -83
  56. package/lib/cjs/presentation-common/RpcRequestsHandler.d.ts.map +1 -1
  57. package/lib/cjs/presentation-common/RpcRequestsHandler.js +166 -171
  58. package/lib/cjs/presentation-common/RpcRequestsHandler.js.map +1 -1
  59. package/lib/cjs/presentation-common/RulesetVariables.d.ts +171 -171
  60. package/lib/cjs/presentation-common/RulesetVariables.d.ts.map +1 -1
  61. package/lib/cjs/presentation-common/RulesetVariables.js +55 -55
  62. package/lib/cjs/presentation-common/RulesetsFactory.d.ts +44 -44
  63. package/lib/cjs/presentation-common/RulesetsFactory.d.ts.map +1 -1
  64. package/lib/cjs/presentation-common/RulesetsFactory.js +223 -223
  65. package/lib/cjs/presentation-common/RulesetsFactory.js.map +1 -1
  66. package/lib/cjs/presentation-common/Update.d.ts +150 -213
  67. package/lib/cjs/presentation-common/Update.d.ts.map +1 -1
  68. package/lib/cjs/presentation-common/Update.js +114 -226
  69. package/lib/cjs/presentation-common/Update.js.map +1 -1
  70. package/lib/cjs/presentation-common/Utils.d.ts +62 -62
  71. package/lib/cjs/presentation-common/Utils.d.ts.map +1 -1
  72. package/lib/cjs/presentation-common/Utils.js +43 -43
  73. package/lib/cjs/presentation-common/content/Category.d.ts +49 -49
  74. package/lib/cjs/presentation-common/content/Category.js +48 -48
  75. package/lib/cjs/presentation-common/content/Content.d.ts +38 -38
  76. package/lib/cjs/presentation-common/content/Content.js +56 -56
  77. package/lib/cjs/presentation-common/content/ContentTraverser.d.ts +271 -271
  78. package/lib/cjs/presentation-common/content/ContentTraverser.js +437 -439
  79. package/lib/cjs/presentation-common/content/ContentTraverser.js.map +1 -1
  80. package/lib/cjs/presentation-common/content/Descriptor.d.ts +328 -328
  81. package/lib/cjs/presentation-common/content/Descriptor.js +191 -193
  82. package/lib/cjs/presentation-common/content/Descriptor.js.map +1 -1
  83. package/lib/cjs/presentation-common/content/DisplayTypes.d.ts +21 -21
  84. package/lib/cjs/presentation-common/content/DisplayTypes.js +29 -29
  85. package/lib/cjs/presentation-common/content/Editor.d.ts +15 -15
  86. package/lib/cjs/presentation-common/content/Editor.js +9 -9
  87. package/lib/cjs/presentation-common/content/Fields.d.ts +298 -301
  88. package/lib/cjs/presentation-common/content/Fields.d.ts.map +1 -1
  89. package/lib/cjs/presentation-common/content/Fields.js +393 -397
  90. package/lib/cjs/presentation-common/content/Fields.js.map +1 -1
  91. package/lib/cjs/presentation-common/content/Item.d.ts +85 -85
  92. package/lib/cjs/presentation-common/content/Item.d.ts.map +1 -1
  93. package/lib/cjs/presentation-common/content/Item.js +84 -84
  94. package/lib/cjs/presentation-common/content/Item.js.map +1 -1
  95. package/lib/cjs/presentation-common/content/Property.d.ts +57 -57
  96. package/lib/cjs/presentation-common/content/Property.d.ts.map +1 -1
  97. package/lib/cjs/presentation-common/content/Property.js +40 -40
  98. package/lib/cjs/presentation-common/content/PropertyValueFormatter.d.ts +29 -0
  99. package/lib/cjs/presentation-common/content/PropertyValueFormatter.d.ts.map +1 -0
  100. package/lib/cjs/presentation-common/content/PropertyValueFormatter.js +139 -0
  101. package/lib/cjs/presentation-common/content/PropertyValueFormatter.js.map +1 -0
  102. package/lib/cjs/presentation-common/content/Renderer.d.ts +11 -11
  103. package/lib/cjs/presentation-common/content/Renderer.js +9 -9
  104. package/lib/cjs/presentation-common/content/TypeDescription.d.ts +72 -72
  105. package/lib/cjs/presentation-common/content/TypeDescription.d.ts.map +1 -1
  106. package/lib/cjs/presentation-common/content/TypeDescription.js +23 -23
  107. package/lib/cjs/presentation-common/content/Value.d.ts +204 -189
  108. package/lib/cjs/presentation-common/content/Value.d.ts.map +1 -1
  109. package/lib/cjs/presentation-common/content/Value.js +281 -273
  110. package/lib/cjs/presentation-common/content/Value.js.map +1 -1
  111. package/lib/cjs/presentation-common/hierarchy/HierarchyLevel.d.ts +37 -37
  112. package/lib/cjs/presentation-common/hierarchy/HierarchyLevel.js +31 -31
  113. package/lib/cjs/presentation-common/hierarchy/Key.d.ts +246 -246
  114. package/lib/cjs/presentation-common/hierarchy/Key.d.ts.map +1 -1
  115. package/lib/cjs/presentation-common/hierarchy/Key.js +121 -121
  116. package/lib/cjs/presentation-common/hierarchy/Key.js.map +1 -1
  117. package/lib/cjs/presentation-common/hierarchy/Node.d.ts +154 -154
  118. package/lib/cjs/presentation-common/hierarchy/Node.d.ts.map +1 -1
  119. package/lib/cjs/presentation-common/hierarchy/Node.js +106 -106
  120. package/lib/cjs/presentation-common/hierarchy/Node.js.map +1 -1
  121. package/lib/cjs/presentation-common/hierarchy/NodePathElement.d.ts +96 -96
  122. package/lib/cjs/presentation-common/hierarchy/NodePathElement.js +122 -122
  123. package/lib/cjs/presentation-common/rules/ClassSpecifications.d.ts +45 -45
  124. package/lib/cjs/presentation-common/rules/ClassSpecifications.js +9 -9
  125. package/lib/cjs/presentation-common/rules/RelatedInstanceSpecification.d.ts +31 -31
  126. package/lib/cjs/presentation-common/rules/RelatedInstanceSpecification.js +9 -9
  127. package/lib/cjs/presentation-common/rules/RelationshipDirection.d.ts +13 -13
  128. package/lib/cjs/presentation-common/rules/RelationshipDirection.js +21 -21
  129. package/lib/cjs/presentation-common/rules/RelationshipPathSpecification.d.ts +56 -56
  130. package/lib/cjs/presentation-common/rules/RelationshipPathSpecification.d.ts.map +1 -1
  131. package/lib/cjs/presentation-common/rules/RelationshipPathSpecification.js +9 -9
  132. package/lib/cjs/presentation-common/rules/Rule.d.ts +76 -76
  133. package/lib/cjs/presentation-common/rules/Rule.js +35 -35
  134. package/lib/cjs/presentation-common/rules/Ruleset.d.ts +65 -65
  135. package/lib/cjs/presentation-common/rules/Ruleset.js +9 -9
  136. package/lib/cjs/presentation-common/rules/SchemasSpecification.d.ts +41 -41
  137. package/lib/cjs/presentation-common/rules/SchemasSpecification.js +9 -9
  138. package/lib/cjs/presentation-common/rules/Variables.d.ts +58 -58
  139. package/lib/cjs/presentation-common/rules/Variables.js +25 -25
  140. package/lib/cjs/presentation-common/rules/content/ContentInstancesOfSpecificClassesSpecification.d.ts +41 -41
  141. package/lib/cjs/presentation-common/rules/content/ContentInstancesOfSpecificClassesSpecification.js +9 -9
  142. package/lib/cjs/presentation-common/rules/content/ContentRelatedInstancesSpecification.d.ts +25 -25
  143. package/lib/cjs/presentation-common/rules/content/ContentRelatedInstancesSpecification.js +9 -9
  144. package/lib/cjs/presentation-common/rules/content/ContentRule.d.ts +30 -30
  145. package/lib/cjs/presentation-common/rules/content/ContentRule.js +9 -9
  146. package/lib/cjs/presentation-common/rules/content/ContentSpecification.d.ts +58 -58
  147. package/lib/cjs/presentation-common/rules/content/ContentSpecification.js +20 -20
  148. package/lib/cjs/presentation-common/rules/content/DefaultPropertyCategoryOverride.d.ts +19 -19
  149. package/lib/cjs/presentation-common/rules/content/DefaultPropertyCategoryOverride.js +9 -9
  150. package/lib/cjs/presentation-common/rules/content/PropertySpecification.d.ts +86 -86
  151. package/lib/cjs/presentation-common/rules/content/PropertySpecification.js +9 -9
  152. package/lib/cjs/presentation-common/rules/content/SelectedNodeInstancesSpecification.d.ts +28 -28
  153. package/lib/cjs/presentation-common/rules/content/SelectedNodeInstancesSpecification.js +9 -9
  154. package/lib/cjs/presentation-common/rules/content/modifiers/CalculatedPropertiesSpecification.d.ts +25 -25
  155. package/lib/cjs/presentation-common/rules/content/modifiers/CalculatedPropertiesSpecification.js +9 -9
  156. package/lib/cjs/presentation-common/rules/content/modifiers/ContentModifier.d.ts +64 -57
  157. package/lib/cjs/presentation-common/rules/content/modifiers/ContentModifier.d.ts.map +1 -1
  158. package/lib/cjs/presentation-common/rules/content/modifiers/ContentModifier.js +9 -9
  159. package/lib/cjs/presentation-common/rules/content/modifiers/ContentModifier.js.map +1 -1
  160. package/lib/cjs/presentation-common/rules/content/modifiers/CustomRendererSpecification.d.ts +17 -17
  161. package/lib/cjs/presentation-common/rules/content/modifiers/CustomRendererSpecification.js +9 -9
  162. package/lib/cjs/presentation-common/rules/content/modifiers/PropertyCategorySpecification.d.ts +107 -107
  163. package/lib/cjs/presentation-common/rules/content/modifiers/PropertyCategorySpecification.d.ts.map +1 -1
  164. package/lib/cjs/presentation-common/rules/content/modifiers/PropertyCategorySpecification.js +9 -9
  165. package/lib/cjs/presentation-common/rules/content/modifiers/PropertyEditorsSpecification.d.ts +108 -108
  166. package/lib/cjs/presentation-common/rules/content/modifiers/PropertyEditorsSpecification.js +21 -21
  167. package/lib/cjs/presentation-common/rules/content/modifiers/RelatedPropertiesSpecification.d.ts +96 -96
  168. package/lib/cjs/presentation-common/rules/content/modifiers/RelatedPropertiesSpecification.js +43 -43
  169. package/lib/cjs/presentation-common/rules/customization/CheckBoxRule.d.ts +44 -44
  170. package/lib/cjs/presentation-common/rules/customization/CheckBoxRule.js +9 -9
  171. package/lib/cjs/presentation-common/rules/customization/CustomizationRule.d.ts +36 -36
  172. package/lib/cjs/presentation-common/rules/customization/CustomizationRule.js +9 -9
  173. package/lib/cjs/presentation-common/rules/customization/ExtendedDataRule.d.ts +27 -27
  174. package/lib/cjs/presentation-common/rules/customization/ExtendedDataRule.js +9 -9
  175. package/lib/cjs/presentation-common/rules/customization/GroupingRule.d.ts +207 -207
  176. package/lib/cjs/presentation-common/rules/customization/GroupingRule.js +51 -51
  177. package/lib/cjs/presentation-common/rules/customization/ImageIdOverride.d.ts +29 -29
  178. package/lib/cjs/presentation-common/rules/customization/ImageIdOverride.js +9 -9
  179. package/lib/cjs/presentation-common/rules/customization/InstanceLabelOverride.d.ts +158 -158
  180. package/lib/cjs/presentation-common/rules/customization/InstanceLabelOverride.d.ts.map +1 -1
  181. package/lib/cjs/presentation-common/rules/customization/InstanceLabelOverride.js +25 -25
  182. package/lib/cjs/presentation-common/rules/customization/LabelOverride.d.ts +40 -40
  183. package/lib/cjs/presentation-common/rules/customization/LabelOverride.js +9 -9
  184. package/lib/cjs/presentation-common/rules/customization/SortingRule.d.ts +58 -58
  185. package/lib/cjs/presentation-common/rules/customization/SortingRule.d.ts.map +1 -1
  186. package/lib/cjs/presentation-common/rules/customization/SortingRule.js +9 -9
  187. package/lib/cjs/presentation-common/rules/customization/StyleOverride.d.ts +48 -48
  188. package/lib/cjs/presentation-common/rules/customization/StyleOverride.js +9 -9
  189. package/lib/cjs/presentation-common/rules/hierarchy/ChildNodeRule.d.ts +14 -14
  190. package/lib/cjs/presentation-common/rules/hierarchy/ChildNodeRule.js +9 -9
  191. package/lib/cjs/presentation-common/rules/hierarchy/ChildNodeSpecification.d.ts +98 -98
  192. package/lib/cjs/presentation-common/rules/hierarchy/ChildNodeSpecification.d.ts.map +1 -1
  193. package/lib/cjs/presentation-common/rules/hierarchy/ChildNodeSpecification.js +21 -21
  194. package/lib/cjs/presentation-common/rules/hierarchy/CustomNodeSpecification.d.ts +31 -31
  195. package/lib/cjs/presentation-common/rules/hierarchy/CustomNodeSpecification.js +9 -9
  196. package/lib/cjs/presentation-common/rules/hierarchy/CustomQueryInstanceNodesSpecification.d.ts +79 -79
  197. package/lib/cjs/presentation-common/rules/hierarchy/CustomQueryInstanceNodesSpecification.js +19 -19
  198. package/lib/cjs/presentation-common/rules/hierarchy/InstanceNodesOfSpecificClassesSpecification.d.ts +39 -39
  199. package/lib/cjs/presentation-common/rules/hierarchy/InstanceNodesOfSpecificClassesSpecification.js +9 -9
  200. package/lib/cjs/presentation-common/rules/hierarchy/NavigationRule.d.ts +50 -50
  201. package/lib/cjs/presentation-common/rules/hierarchy/NavigationRule.d.ts.map +1 -1
  202. package/lib/cjs/presentation-common/rules/hierarchy/NavigationRule.js +9 -9
  203. package/lib/cjs/presentation-common/rules/hierarchy/NodeArtifactsRule.d.ts +27 -27
  204. package/lib/cjs/presentation-common/rules/hierarchy/NodeArtifactsRule.js +9 -9
  205. package/lib/cjs/presentation-common/rules/hierarchy/RelatedInstanceNodesSpecification.d.ts +27 -27
  206. package/lib/cjs/presentation-common/rules/hierarchy/RelatedInstanceNodesSpecification.js +9 -9
  207. package/lib/cjs/presentation-common/rules/hierarchy/RootNodeRule.d.ts +16 -16
  208. package/lib/cjs/presentation-common/rules/hierarchy/RootNodeRule.js +9 -9
  209. package/lib/cjs/presentation-common/rules/hierarchy/SubCondition.d.ts +35 -35
  210. package/lib/cjs/presentation-common/rules/hierarchy/SubCondition.js +9 -9
  211. package/lib/cjs/presentation-common/selection/SelectionScope.d.ts +38 -38
  212. package/lib/cjs/presentation-common/selection/SelectionScope.d.ts.map +1 -1
  213. package/lib/cjs/presentation-common/selection/SelectionScope.js +9 -9
  214. package/lib/cjs/presentation-common.d.ts +114 -112
  215. package/lib/cjs/presentation-common.d.ts.map +1 -1
  216. package/lib/cjs/presentation-common.js +134 -128
  217. package/lib/cjs/presentation-common.js.map +1 -1
  218. package/lib/esm/presentation-common/AsyncTasks.d.ts +22 -22
  219. package/lib/esm/presentation-common/AsyncTasks.js +34 -34
  220. package/lib/esm/presentation-common/CommonLoggerCategory.d.ts +12 -12
  221. package/lib/esm/presentation-common/CommonLoggerCategory.js +17 -17
  222. package/lib/esm/presentation-common/Diagnostics.d.ts +125 -125
  223. package/lib/esm/presentation-common/Diagnostics.d.ts.map +1 -1
  224. package/lib/esm/presentation-common/Diagnostics.js +67 -67
  225. package/lib/esm/presentation-common/EC.d.ts +347 -350
  226. package/lib/esm/presentation-common/EC.d.ts.map +1 -1
  227. package/lib/esm/presentation-common/EC.js +287 -287
  228. package/lib/esm/presentation-common/EC.js.map +1 -1
  229. package/lib/esm/presentation-common/ElementProperties.d.ts +123 -123
  230. package/lib/esm/presentation-common/ElementProperties.d.ts.map +1 -1
  231. package/lib/esm/presentation-common/ElementProperties.js +8 -8
  232. package/lib/esm/presentation-common/Error.d.ts +47 -45
  233. package/lib/esm/presentation-common/Error.d.ts.map +1 -1
  234. package/lib/esm/presentation-common/Error.js +60 -58
  235. package/lib/esm/presentation-common/Error.js.map +1 -1
  236. package/lib/esm/presentation-common/InstanceFilterDefinition.d.ts +93 -93
  237. package/lib/esm/presentation-common/InstanceFilterDefinition.d.ts.map +1 -1
  238. package/lib/esm/presentation-common/InstanceFilterDefinition.js +8 -8
  239. package/lib/esm/presentation-common/KeySet.d.ts +146 -146
  240. package/lib/esm/presentation-common/KeySet.d.ts.map +1 -1
  241. package/lib/esm/presentation-common/KeySet.js +424 -424
  242. package/lib/esm/presentation-common/KoqPropertyValueFormatter.d.ts +20 -0
  243. package/lib/esm/presentation-common/KoqPropertyValueFormatter.d.ts.map +1 -0
  244. package/lib/esm/presentation-common/KoqPropertyValueFormatter.js +152 -0
  245. package/lib/esm/presentation-common/KoqPropertyValueFormatter.js.map +1 -0
  246. package/lib/esm/presentation-common/LabelDefinition.d.ts +93 -87
  247. package/lib/esm/presentation-common/LabelDefinition.d.ts.map +1 -1
  248. package/lib/esm/presentation-common/LabelDefinition.js +75 -70
  249. package/lib/esm/presentation-common/LabelDefinition.js.map +1 -1
  250. package/lib/esm/presentation-common/LocalizationHelper.d.ts +29 -29
  251. package/lib/esm/presentation-common/LocalizationHelper.d.ts.map +1 -1
  252. package/lib/esm/presentation-common/LocalizationHelper.js +109 -106
  253. package/lib/esm/presentation-common/LocalizationHelper.js.map +1 -1
  254. package/lib/esm/presentation-common/PresentationIpcInterface.d.ts +27 -40
  255. package/lib/esm/presentation-common/PresentationIpcInterface.d.ts.map +1 -1
  256. package/lib/esm/presentation-common/PresentationIpcInterface.js +9 -9
  257. package/lib/esm/presentation-common/PresentationIpcInterface.js.map +1 -1
  258. package/lib/esm/presentation-common/PresentationManagerOptions.d.ts +279 -261
  259. package/lib/esm/presentation-common/PresentationManagerOptions.d.ts.map +1 -1
  260. package/lib/esm/presentation-common/PresentationManagerOptions.js +18 -18
  261. package/lib/esm/presentation-common/PresentationManagerOptions.js.map +1 -1
  262. package/lib/esm/presentation-common/PresentationRpcInterface.d.ts +186 -186
  263. package/lib/esm/presentation-common/PresentationRpcInterface.d.ts.map +1 -1
  264. package/lib/esm/presentation-common/PresentationRpcInterface.js +105 -100
  265. package/lib/esm/presentation-common/PresentationRpcInterface.js.map +1 -1
  266. package/lib/esm/presentation-common/RegisteredRuleset.d.ts +26 -26
  267. package/lib/esm/presentation-common/RegisteredRuleset.js +29 -29
  268. package/lib/esm/presentation-common/RpcRequestsHandler.d.ts +82 -83
  269. package/lib/esm/presentation-common/RpcRequestsHandler.d.ts.map +1 -1
  270. package/lib/esm/presentation-common/RpcRequestsHandler.js +162 -167
  271. package/lib/esm/presentation-common/RpcRequestsHandler.js.map +1 -1
  272. package/lib/esm/presentation-common/RulesetVariables.d.ts +171 -171
  273. package/lib/esm/presentation-common/RulesetVariables.d.ts.map +1 -1
  274. package/lib/esm/presentation-common/RulesetVariables.js +52 -52
  275. package/lib/esm/presentation-common/RulesetsFactory.d.ts +44 -44
  276. package/lib/esm/presentation-common/RulesetsFactory.d.ts.map +1 -1
  277. package/lib/esm/presentation-common/RulesetsFactory.js +219 -219
  278. package/lib/esm/presentation-common/RulesetsFactory.js.map +1 -1
  279. package/lib/esm/presentation-common/Update.d.ts +150 -213
  280. package/lib/esm/presentation-common/Update.d.ts.map +1 -1
  281. package/lib/esm/presentation-common/Update.js +111 -223
  282. package/lib/esm/presentation-common/Update.js.map +1 -1
  283. package/lib/esm/presentation-common/Utils.d.ts +62 -62
  284. package/lib/esm/presentation-common/Utils.d.ts.map +1 -1
  285. package/lib/esm/presentation-common/Utils.js +39 -39
  286. package/lib/esm/presentation-common/content/Category.d.ts +49 -49
  287. package/lib/esm/presentation-common/content/Category.js +45 -45
  288. package/lib/esm/presentation-common/content/Content.d.ts +38 -38
  289. package/lib/esm/presentation-common/content/Content.js +52 -52
  290. package/lib/esm/presentation-common/content/ContentTraverser.d.ts +271 -271
  291. package/lib/esm/presentation-common/content/ContentTraverser.js +427 -429
  292. package/lib/esm/presentation-common/content/ContentTraverser.js.map +1 -1
  293. package/lib/esm/presentation-common/content/Descriptor.d.ts +328 -328
  294. package/lib/esm/presentation-common/content/Descriptor.js +187 -189
  295. package/lib/esm/presentation-common/content/Descriptor.js.map +1 -1
  296. package/lib/esm/presentation-common/content/DisplayTypes.d.ts +21 -21
  297. package/lib/esm/presentation-common/content/DisplayTypes.js +26 -26
  298. package/lib/esm/presentation-common/content/Editor.d.ts +15 -15
  299. package/lib/esm/presentation-common/content/Editor.js +8 -8
  300. package/lib/esm/presentation-common/content/Fields.d.ts +298 -301
  301. package/lib/esm/presentation-common/content/Fields.d.ts.map +1 -1
  302. package/lib/esm/presentation-common/content/Fields.js +386 -390
  303. package/lib/esm/presentation-common/content/Fields.js.map +1 -1
  304. package/lib/esm/presentation-common/content/Item.d.ts +85 -85
  305. package/lib/esm/presentation-common/content/Item.d.ts.map +1 -1
  306. package/lib/esm/presentation-common/content/Item.js +80 -80
  307. package/lib/esm/presentation-common/content/Item.js.map +1 -1
  308. package/lib/esm/presentation-common/content/Property.d.ts +57 -57
  309. package/lib/esm/presentation-common/content/Property.d.ts.map +1 -1
  310. package/lib/esm/presentation-common/content/Property.js +37 -37
  311. package/lib/esm/presentation-common/content/PropertyValueFormatter.d.ts +29 -0
  312. package/lib/esm/presentation-common/content/PropertyValueFormatter.d.ts.map +1 -0
  313. package/lib/esm/presentation-common/content/PropertyValueFormatter.js +134 -0
  314. package/lib/esm/presentation-common/content/PropertyValueFormatter.js.map +1 -0
  315. package/lib/esm/presentation-common/content/Renderer.d.ts +11 -11
  316. package/lib/esm/presentation-common/content/Renderer.js +8 -8
  317. package/lib/esm/presentation-common/content/TypeDescription.d.ts +72 -72
  318. package/lib/esm/presentation-common/content/TypeDescription.d.ts.map +1 -1
  319. package/lib/esm/presentation-common/content/TypeDescription.js +20 -20
  320. package/lib/esm/presentation-common/content/Value.d.ts +204 -189
  321. package/lib/esm/presentation-common/content/Value.d.ts.map +1 -1
  322. package/lib/esm/presentation-common/content/Value.js +278 -270
  323. package/lib/esm/presentation-common/content/Value.js.map +1 -1
  324. package/lib/esm/presentation-common/hierarchy/HierarchyLevel.d.ts +37 -37
  325. package/lib/esm/presentation-common/hierarchy/HierarchyLevel.js +28 -28
  326. package/lib/esm/presentation-common/hierarchy/Key.d.ts +246 -246
  327. package/lib/esm/presentation-common/hierarchy/Key.d.ts.map +1 -1
  328. package/lib/esm/presentation-common/hierarchy/Key.js +118 -118
  329. package/lib/esm/presentation-common/hierarchy/Key.js.map +1 -1
  330. package/lib/esm/presentation-common/hierarchy/Node.d.ts +154 -154
  331. package/lib/esm/presentation-common/hierarchy/Node.d.ts.map +1 -1
  332. package/lib/esm/presentation-common/hierarchy/Node.js +103 -103
  333. package/lib/esm/presentation-common/hierarchy/Node.js.map +1 -1
  334. package/lib/esm/presentation-common/hierarchy/NodePathElement.d.ts +96 -96
  335. package/lib/esm/presentation-common/hierarchy/NodePathElement.js +119 -119
  336. package/lib/esm/presentation-common/rules/ClassSpecifications.d.ts +45 -45
  337. package/lib/esm/presentation-common/rules/ClassSpecifications.js +8 -8
  338. package/lib/esm/presentation-common/rules/RelatedInstanceSpecification.d.ts +31 -31
  339. package/lib/esm/presentation-common/rules/RelatedInstanceSpecification.js +8 -8
  340. package/lib/esm/presentation-common/rules/RelationshipDirection.d.ts +13 -13
  341. package/lib/esm/presentation-common/rules/RelationshipDirection.js +18 -18
  342. package/lib/esm/presentation-common/rules/RelationshipPathSpecification.d.ts +56 -56
  343. package/lib/esm/presentation-common/rules/RelationshipPathSpecification.d.ts.map +1 -1
  344. package/lib/esm/presentation-common/rules/RelationshipPathSpecification.js +8 -8
  345. package/lib/esm/presentation-common/rules/Rule.d.ts +76 -76
  346. package/lib/esm/presentation-common/rules/Rule.js +32 -32
  347. package/lib/esm/presentation-common/rules/Ruleset.d.ts +65 -65
  348. package/lib/esm/presentation-common/rules/Ruleset.js +8 -8
  349. package/lib/esm/presentation-common/rules/SchemasSpecification.d.ts +41 -41
  350. package/lib/esm/presentation-common/rules/SchemasSpecification.js +8 -8
  351. package/lib/esm/presentation-common/rules/Variables.d.ts +58 -58
  352. package/lib/esm/presentation-common/rules/Variables.js +22 -22
  353. package/lib/esm/presentation-common/rules/content/ContentInstancesOfSpecificClassesSpecification.d.ts +41 -41
  354. package/lib/esm/presentation-common/rules/content/ContentInstancesOfSpecificClassesSpecification.js +8 -8
  355. package/lib/esm/presentation-common/rules/content/ContentRelatedInstancesSpecification.d.ts +25 -25
  356. package/lib/esm/presentation-common/rules/content/ContentRelatedInstancesSpecification.js +8 -8
  357. package/lib/esm/presentation-common/rules/content/ContentRule.d.ts +30 -30
  358. package/lib/esm/presentation-common/rules/content/ContentRule.js +8 -8
  359. package/lib/esm/presentation-common/rules/content/ContentSpecification.d.ts +58 -58
  360. package/lib/esm/presentation-common/rules/content/ContentSpecification.js +17 -17
  361. package/lib/esm/presentation-common/rules/content/DefaultPropertyCategoryOverride.d.ts +19 -19
  362. package/lib/esm/presentation-common/rules/content/DefaultPropertyCategoryOverride.js +8 -8
  363. package/lib/esm/presentation-common/rules/content/PropertySpecification.d.ts +86 -86
  364. package/lib/esm/presentation-common/rules/content/PropertySpecification.js +8 -8
  365. package/lib/esm/presentation-common/rules/content/SelectedNodeInstancesSpecification.d.ts +28 -28
  366. package/lib/esm/presentation-common/rules/content/SelectedNodeInstancesSpecification.js +8 -8
  367. package/lib/esm/presentation-common/rules/content/modifiers/CalculatedPropertiesSpecification.d.ts +25 -25
  368. package/lib/esm/presentation-common/rules/content/modifiers/CalculatedPropertiesSpecification.js +8 -8
  369. package/lib/esm/presentation-common/rules/content/modifiers/ContentModifier.d.ts +64 -57
  370. package/lib/esm/presentation-common/rules/content/modifiers/ContentModifier.d.ts.map +1 -1
  371. package/lib/esm/presentation-common/rules/content/modifiers/ContentModifier.js +8 -8
  372. package/lib/esm/presentation-common/rules/content/modifiers/ContentModifier.js.map +1 -1
  373. package/lib/esm/presentation-common/rules/content/modifiers/CustomRendererSpecification.d.ts +17 -17
  374. package/lib/esm/presentation-common/rules/content/modifiers/CustomRendererSpecification.js +8 -8
  375. package/lib/esm/presentation-common/rules/content/modifiers/PropertyCategorySpecification.d.ts +107 -107
  376. package/lib/esm/presentation-common/rules/content/modifiers/PropertyCategorySpecification.d.ts.map +1 -1
  377. package/lib/esm/presentation-common/rules/content/modifiers/PropertyCategorySpecification.js +8 -8
  378. package/lib/esm/presentation-common/rules/content/modifiers/PropertyEditorsSpecification.d.ts +108 -108
  379. package/lib/esm/presentation-common/rules/content/modifiers/PropertyEditorsSpecification.js +18 -18
  380. package/lib/esm/presentation-common/rules/content/modifiers/RelatedPropertiesSpecification.d.ts +96 -96
  381. package/lib/esm/presentation-common/rules/content/modifiers/RelatedPropertiesSpecification.js +40 -40
  382. package/lib/esm/presentation-common/rules/customization/CheckBoxRule.d.ts +44 -44
  383. package/lib/esm/presentation-common/rules/customization/CheckBoxRule.js +8 -8
  384. package/lib/esm/presentation-common/rules/customization/CustomizationRule.d.ts +36 -36
  385. package/lib/esm/presentation-common/rules/customization/CustomizationRule.js +8 -8
  386. package/lib/esm/presentation-common/rules/customization/ExtendedDataRule.d.ts +27 -27
  387. package/lib/esm/presentation-common/rules/customization/ExtendedDataRule.js +8 -8
  388. package/lib/esm/presentation-common/rules/customization/GroupingRule.d.ts +207 -207
  389. package/lib/esm/presentation-common/rules/customization/GroupingRule.js +48 -48
  390. package/lib/esm/presentation-common/rules/customization/ImageIdOverride.d.ts +29 -29
  391. package/lib/esm/presentation-common/rules/customization/ImageIdOverride.js +8 -8
  392. package/lib/esm/presentation-common/rules/customization/InstanceLabelOverride.d.ts +158 -158
  393. package/lib/esm/presentation-common/rules/customization/InstanceLabelOverride.d.ts.map +1 -1
  394. package/lib/esm/presentation-common/rules/customization/InstanceLabelOverride.js +22 -22
  395. package/lib/esm/presentation-common/rules/customization/LabelOverride.d.ts +40 -40
  396. package/lib/esm/presentation-common/rules/customization/LabelOverride.js +8 -8
  397. package/lib/esm/presentation-common/rules/customization/SortingRule.d.ts +58 -58
  398. package/lib/esm/presentation-common/rules/customization/SortingRule.d.ts.map +1 -1
  399. package/lib/esm/presentation-common/rules/customization/SortingRule.js +8 -8
  400. package/lib/esm/presentation-common/rules/customization/StyleOverride.d.ts +48 -48
  401. package/lib/esm/presentation-common/rules/customization/StyleOverride.js +8 -8
  402. package/lib/esm/presentation-common/rules/hierarchy/ChildNodeRule.d.ts +14 -14
  403. package/lib/esm/presentation-common/rules/hierarchy/ChildNodeRule.js +8 -8
  404. package/lib/esm/presentation-common/rules/hierarchy/ChildNodeSpecification.d.ts +98 -98
  405. package/lib/esm/presentation-common/rules/hierarchy/ChildNodeSpecification.d.ts.map +1 -1
  406. package/lib/esm/presentation-common/rules/hierarchy/ChildNodeSpecification.js +18 -18
  407. package/lib/esm/presentation-common/rules/hierarchy/CustomNodeSpecification.d.ts +31 -31
  408. package/lib/esm/presentation-common/rules/hierarchy/CustomNodeSpecification.js +8 -8
  409. package/lib/esm/presentation-common/rules/hierarchy/CustomQueryInstanceNodesSpecification.d.ts +79 -79
  410. package/lib/esm/presentation-common/rules/hierarchy/CustomQueryInstanceNodesSpecification.js +16 -16
  411. package/lib/esm/presentation-common/rules/hierarchy/InstanceNodesOfSpecificClassesSpecification.d.ts +39 -39
  412. package/lib/esm/presentation-common/rules/hierarchy/InstanceNodesOfSpecificClassesSpecification.js +8 -8
  413. package/lib/esm/presentation-common/rules/hierarchy/NavigationRule.d.ts +50 -50
  414. package/lib/esm/presentation-common/rules/hierarchy/NavigationRule.d.ts.map +1 -1
  415. package/lib/esm/presentation-common/rules/hierarchy/NavigationRule.js +8 -8
  416. package/lib/esm/presentation-common/rules/hierarchy/NodeArtifactsRule.d.ts +27 -27
  417. package/lib/esm/presentation-common/rules/hierarchy/NodeArtifactsRule.js +8 -8
  418. package/lib/esm/presentation-common/rules/hierarchy/RelatedInstanceNodesSpecification.d.ts +27 -27
  419. package/lib/esm/presentation-common/rules/hierarchy/RelatedInstanceNodesSpecification.js +8 -8
  420. package/lib/esm/presentation-common/rules/hierarchy/RootNodeRule.d.ts +16 -16
  421. package/lib/esm/presentation-common/rules/hierarchy/RootNodeRule.js +8 -8
  422. package/lib/esm/presentation-common/rules/hierarchy/SubCondition.d.ts +35 -35
  423. package/lib/esm/presentation-common/rules/hierarchy/SubCondition.js +8 -8
  424. package/lib/esm/presentation-common/selection/SelectionScope.d.ts +38 -38
  425. package/lib/esm/presentation-common/selection/SelectionScope.d.ts.map +1 -1
  426. package/lib/esm/presentation-common/selection/SelectionScope.js +8 -8
  427. package/lib/esm/presentation-common.d.ts +114 -112
  428. package/lib/esm/presentation-common.d.ts.map +1 -1
  429. package/lib/esm/presentation-common.js +118 -116
  430. package/lib/esm/presentation-common.js.map +1 -1
  431. package/lib/public/locales/en/Presentation.json +19 -0
  432. package/package.json +17 -15
  433. package/lib/cjs/assets/locales/en/BisCore.json +0 -18
  434. package/lib/cjs/assets/locales/en/ECPresentation.json +0 -9
  435. package/lib/cjs/assets/locales/en/RulesEngine.json +0 -6
  436. package/lib/cjs/assets/locales/en-PSEUDO/BisCore.json +0 -18
  437. package/lib/cjs/assets/locales/en-PSEUDO/ECPresentation.json +0 -9
  438. package/lib/cjs/assets/locales/en-PSEUDO/RulesEngine.json +0 -6
  439. package/lib/public/locales/en/BisCore.json +0 -18
  440. package/lib/public/locales/en/ECPresentation.json +0 -9
  441. package/lib/public/locales/en/RulesEngine.json +0 -6
@@ -1,159 +1,159 @@
1
- /** @packageDocumentation
2
- * @module PresentationRules
3
- */
4
- import { SingleSchemaClassSpecification } from "../ClassSpecifications";
5
- import { RelationshipPathSpecification } from "../RelationshipPathSpecification";
6
- import { RuleBase } from "../Rule";
7
- /**
8
- * Instance label override rule provides a way to set instance label to one of its property values,
9
- * other attributes and/or combination of them.
10
- *
11
- * @see [Instance label override reference documentation page]($docs/presentation/customization/InstanceLabelOverride.md)
12
- * @public
13
- */
14
- export interface InstanceLabelOverride extends RuleBase {
15
- /** Used for serializing to JSON. */
16
- ruleType: "InstanceLabelOverride";
17
- /**
18
- * Specifies the ECClass to apply this rule to.
19
- */
20
- class: SingleSchemaClassSpecification;
21
- /**
22
- * Specifications of values used to override label. The first non-empty value is used as the actual label.
23
- */
24
- values: InstanceLabelOverrideValueSpecification[];
25
- }
26
- /**
27
- * Types of possible [[InstanceLabelOverride]] label values.
28
- * @public
29
- */
30
- export declare enum InstanceLabelOverrideValueSpecificationType {
31
- Composite = "Composite",
32
- Property = "Property",
33
- ClassName = "ClassName",
34
- ClassLabel = "ClassLabel",
35
- BriefcaseId = "BriefcaseId",
36
- LocalId = "LocalId",
37
- String = "String",
38
- RelatedInstanceLabel = "RelatedInstanceLabel"
39
- }
40
- /**
41
- * Base interface for all [[InstanceLabelOverrideValueSpecification]] implementations.
42
- * @public
43
- */
44
- export interface InstanceLabelOverrideValueSpecificationBase {
45
- /**
46
- * Type of the specification
47
- * @see InstanceLabelOverrideValueSpecificationType
48
- */
49
- specType: `${InstanceLabelOverrideValueSpecificationType}`;
50
- }
51
- /**
52
- * Specification allows creating a label value composited using multiple other specifications.
53
- *
54
- * @see [Composite value specification reference documentation page]($docs/presentation/customization/InstanceLabelOverride.md#composite-value-specification)
55
- * @public
56
- */
57
- export interface InstanceLabelOverrideCompositeValueSpecification extends InstanceLabelOverrideValueSpecificationBase {
58
- specType: "Composite";
59
- /**
60
- * Parts of the value.
61
- *
62
- * If any of the parts with `isRequired` flag evaluate to an empty string, the
63
- * result of this specification is also an empty string.
64
- */
65
- parts: Array<{
66
- spec: InstanceLabelOverrideValueSpecification;
67
- isRequired?: boolean;
68
- }>;
69
- /** Separator to use when joining the parts. Defaults to a space character. */
70
- separator?: string;
71
- }
72
- /**
73
- * Specification uses property value as the label content.
74
- *
75
- * @see [Property value specification reference documentation page]($docs/presentation/customization/InstanceLabelOverride.md#property-value-specification)
76
- * @public
77
- */
78
- export interface InstanceLabelOverridePropertyValueSpecification extends InstanceLabelOverrideValueSpecificationBase {
79
- specType: "Property";
80
- /**
81
- * Name of the property whose value should be used.
82
- * @note A property with this name must exist on the property class (see [[propertySource]]).
83
- */
84
- propertyName: string;
85
- /**
86
- * [Specification of the relationship path]($docs/presentation/RelationshipPathSpecification.md) from [[InstanceLabelOverride.class]]
87
- * to class of the property. If omitted, [[InstanceLabelOverride.class]] is used as property class.
88
- */
89
- propertySource?: RelationshipPathSpecification;
90
- }
91
- /**
92
- * Specification uses ECClass name as the label content.
93
- *
94
- * @see [Class name value specification reference documentation page]($docs/presentation/customization/InstanceLabelOverride.md#class-name-value-specification)
95
- * @public
96
- */
97
- export interface InstanceLabelOverrideClassNameSpecification extends InstanceLabelOverrideValueSpecificationBase {
98
- specType: "ClassName";
99
- /** Should full (`{schemaName}.{className}`) class name be used */
100
- full?: boolean;
101
- }
102
- /**
103
- * Specification uses ECClass display label as the label content.
104
- *
105
- * @see [Class label value specification reference documentation page]($docs/presentation/customization/InstanceLabelOverride.md#class-label-value-specification)
106
- * @public
107
- */
108
- export interface InstanceLabelOverrideClassLabelSpecification extends InstanceLabelOverrideValueSpecificationBase {
109
- specType: "ClassLabel";
110
- }
111
- /**
112
- * Specification returns ECInstance's briefcase ID in base36 format.
113
- *
114
- * @see [BriefcaseId value specification reference documentation page]($docs/presentation/customization/InstanceLabelOverride.md#briefcaseid-value-specification)
115
- * @public
116
- */
117
- export interface InstanceLabelOverrideBriefcaseIdSpecification extends InstanceLabelOverrideValueSpecificationBase {
118
- specType: "BriefcaseId";
119
- }
120
- /**
121
- * Specification returns ECInstance's local ID in base36 format.
122
- *
123
- * @see [LocalId value specification reference documentation page]($docs/presentation/customization/InstanceLabelOverride.md#localid-value-specification)
124
- * @public
125
- */
126
- export interface InstanceLabelOverrideLocalIdSpecification extends InstanceLabelOverrideValueSpecificationBase {
127
- specType: "LocalId";
128
- }
129
- /**
130
- * Specification uses the specified value as the label content.
131
- *
132
- * @see [String value specification reference documentation page]($docs/presentation/customization/InstanceLabelOverride.md#string-value-specification)
133
- * @public
134
- */
135
- export interface InstanceLabelOverrideStringValueSpecification extends InstanceLabelOverrideValueSpecificationBase {
136
- specType: "String";
137
- /** The value to use as the label content. */
138
- value: string;
139
- }
140
- /**
141
- * Specification uses label of another related instance as the label content.
142
- *
143
- * @see [Related instance label value specification reference documentation page]($docs/presentation/customization/InstanceLabelOverride.md#related-instance-label-value-specification)
144
- * @public
145
- */
146
- export interface InstanceLabelOverrideRelatedInstanceLabelSpecification extends InstanceLabelOverrideValueSpecificationBase {
147
- specType: "RelatedInstanceLabel";
148
- /**
149
- * [Specification of the relationship path]($docs/presentation/RelationshipPathSpecification.md) from `InstanceLabelOverride.class`
150
- * to class of the related instance.
151
- */
152
- pathToRelatedInstance: RelationshipPathSpecification;
153
- }
154
- /**
155
- * Specification to define how the label for [[InstanceLabelOverride]] should be created.
156
- * @public
157
- */
158
- export declare type InstanceLabelOverrideValueSpecification = InstanceLabelOverrideCompositeValueSpecification | InstanceLabelOverridePropertyValueSpecification | InstanceLabelOverrideStringValueSpecification | InstanceLabelOverrideClassNameSpecification | InstanceLabelOverrideClassLabelSpecification | InstanceLabelOverrideBriefcaseIdSpecification | InstanceLabelOverrideLocalIdSpecification | InstanceLabelOverrideRelatedInstanceLabelSpecification;
1
+ /** @packageDocumentation
2
+ * @module PresentationRules
3
+ */
4
+ import { SingleSchemaClassSpecification } from "../ClassSpecifications";
5
+ import { RelationshipPathSpecification } from "../RelationshipPathSpecification";
6
+ import { RuleBase } from "../Rule";
7
+ /**
8
+ * Instance label override rule provides a way to set instance label to one of its property values,
9
+ * other attributes and/or combination of them.
10
+ *
11
+ * @see [Instance label override reference documentation page]($docs/presentation/customization/InstanceLabelOverride.md)
12
+ * @public
13
+ */
14
+ export interface InstanceLabelOverride extends RuleBase {
15
+ /** Used for serializing to JSON. */
16
+ ruleType: "InstanceLabelOverride";
17
+ /**
18
+ * Specifies the ECClass to apply this rule to.
19
+ */
20
+ class: SingleSchemaClassSpecification;
21
+ /**
22
+ * Specifications of values used to override label. The first non-empty value is used as the actual label.
23
+ */
24
+ values: InstanceLabelOverrideValueSpecification[];
25
+ }
26
+ /**
27
+ * Types of possible [[InstanceLabelOverride]] label values.
28
+ * @public
29
+ */
30
+ export declare enum InstanceLabelOverrideValueSpecificationType {
31
+ Composite = "Composite",
32
+ Property = "Property",
33
+ ClassName = "ClassName",
34
+ ClassLabel = "ClassLabel",
35
+ BriefcaseId = "BriefcaseId",
36
+ LocalId = "LocalId",
37
+ String = "String",
38
+ RelatedInstanceLabel = "RelatedInstanceLabel"
39
+ }
40
+ /**
41
+ * Base interface for all [[InstanceLabelOverrideValueSpecification]] implementations.
42
+ * @public
43
+ */
44
+ export interface InstanceLabelOverrideValueSpecificationBase {
45
+ /**
46
+ * Type of the specification
47
+ * @see InstanceLabelOverrideValueSpecificationType
48
+ */
49
+ specType: `${InstanceLabelOverrideValueSpecificationType}`;
50
+ }
51
+ /**
52
+ * Specification allows creating a label value composited using multiple other specifications.
53
+ *
54
+ * @see [Composite value specification reference documentation page]($docs/presentation/customization/InstanceLabelOverride.md#composite-value-specification)
55
+ * @public
56
+ */
57
+ export interface InstanceLabelOverrideCompositeValueSpecification extends InstanceLabelOverrideValueSpecificationBase {
58
+ specType: "Composite";
59
+ /**
60
+ * Parts of the value.
61
+ *
62
+ * If any of the parts with `isRequired` flag evaluate to an empty string, the
63
+ * result of this specification is also an empty string.
64
+ */
65
+ parts: Array<{
66
+ spec: InstanceLabelOverrideValueSpecification;
67
+ isRequired?: boolean;
68
+ }>;
69
+ /** Separator to use when joining the parts. Defaults to a space character. */
70
+ separator?: string;
71
+ }
72
+ /**
73
+ * Specification uses property value as the label content.
74
+ *
75
+ * @see [Property value specification reference documentation page]($docs/presentation/customization/InstanceLabelOverride.md#property-value-specification)
76
+ * @public
77
+ */
78
+ export interface InstanceLabelOverridePropertyValueSpecification extends InstanceLabelOverrideValueSpecificationBase {
79
+ specType: "Property";
80
+ /**
81
+ * Name of the property whose value should be used.
82
+ * @note A property with this name must exist on the property class (see [[propertySource]]).
83
+ */
84
+ propertyName: string;
85
+ /**
86
+ * [Specification of the relationship path]($docs/presentation/RelationshipPathSpecification.md) from [[InstanceLabelOverride.class]]
87
+ * to class of the property. If omitted, [[InstanceLabelOverride.class]] is used as property class.
88
+ */
89
+ propertySource?: RelationshipPathSpecification;
90
+ }
91
+ /**
92
+ * Specification uses ECClass name as the label content.
93
+ *
94
+ * @see [Class name value specification reference documentation page]($docs/presentation/customization/InstanceLabelOverride.md#class-name-value-specification)
95
+ * @public
96
+ */
97
+ export interface InstanceLabelOverrideClassNameSpecification extends InstanceLabelOverrideValueSpecificationBase {
98
+ specType: "ClassName";
99
+ /** Should full (`{schemaName}.{className}`) class name be used */
100
+ full?: boolean;
101
+ }
102
+ /**
103
+ * Specification uses ECClass display label as the label content.
104
+ *
105
+ * @see [Class label value specification reference documentation page]($docs/presentation/customization/InstanceLabelOverride.md#class-label-value-specification)
106
+ * @public
107
+ */
108
+ export interface InstanceLabelOverrideClassLabelSpecification extends InstanceLabelOverrideValueSpecificationBase {
109
+ specType: "ClassLabel";
110
+ }
111
+ /**
112
+ * Specification returns ECInstance's briefcase ID in base36 format.
113
+ *
114
+ * @see [BriefcaseId value specification reference documentation page]($docs/presentation/customization/InstanceLabelOverride.md#briefcaseid-value-specification)
115
+ * @public
116
+ */
117
+ export interface InstanceLabelOverrideBriefcaseIdSpecification extends InstanceLabelOverrideValueSpecificationBase {
118
+ specType: "BriefcaseId";
119
+ }
120
+ /**
121
+ * Specification returns ECInstance's local ID in base36 format.
122
+ *
123
+ * @see [LocalId value specification reference documentation page]($docs/presentation/customization/InstanceLabelOverride.md#localid-value-specification)
124
+ * @public
125
+ */
126
+ export interface InstanceLabelOverrideLocalIdSpecification extends InstanceLabelOverrideValueSpecificationBase {
127
+ specType: "LocalId";
128
+ }
129
+ /**
130
+ * Specification uses the specified value as the label content.
131
+ *
132
+ * @see [String value specification reference documentation page]($docs/presentation/customization/InstanceLabelOverride.md#string-value-specification)
133
+ * @public
134
+ */
135
+ export interface InstanceLabelOverrideStringValueSpecification extends InstanceLabelOverrideValueSpecificationBase {
136
+ specType: "String";
137
+ /** The value to use as the label content. */
138
+ value: string;
139
+ }
140
+ /**
141
+ * Specification uses label of another related instance as the label content.
142
+ *
143
+ * @see [Related instance label value specification reference documentation page]($docs/presentation/customization/InstanceLabelOverride.md#related-instance-label-value-specification)
144
+ * @public
145
+ */
146
+ export interface InstanceLabelOverrideRelatedInstanceLabelSpecification extends InstanceLabelOverrideValueSpecificationBase {
147
+ specType: "RelatedInstanceLabel";
148
+ /**
149
+ * [Specification of the relationship path]($docs/presentation/RelationshipPathSpecification.md) from `InstanceLabelOverride.class`
150
+ * to class of the related instance.
151
+ */
152
+ pathToRelatedInstance: RelationshipPathSpecification;
153
+ }
154
+ /**
155
+ * Specification to define how the label for [[InstanceLabelOverride]] should be created.
156
+ * @public
157
+ */
158
+ export type InstanceLabelOverrideValueSpecification = InstanceLabelOverrideCompositeValueSpecification | InstanceLabelOverridePropertyValueSpecification | InstanceLabelOverrideStringValueSpecification | InstanceLabelOverrideClassNameSpecification | InstanceLabelOverrideClassLabelSpecification | InstanceLabelOverrideBriefcaseIdSpecification | InstanceLabelOverrideLocalIdSpecification | InstanceLabelOverrideRelatedInstanceLabelSpecification;
159
159
  //# sourceMappingURL=InstanceLabelOverride.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"InstanceLabelOverride.d.ts","sourceRoot":"","sources":["../../../../../src/presentation-common/rules/customization/InstanceLabelOverride.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAE,8BAA8B,EAAE,MAAM,wBAAwB,CAAC;AACxE,OAAO,EAAE,6BAA6B,EAAE,MAAM,kCAAkC,CAAC;AACjF,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAEnC;;;;;;GAMG;AACH,MAAM,WAAW,qBAAsB,SAAQ,QAAQ;IACrD,oCAAoC;IACpC,QAAQ,EAAE,uBAAuB,CAAC;IAElC;;OAEG;IACH,KAAK,EAAE,8BAA8B,CAAC;IAEtC;;OAEG;IACH,MAAM,EAAE,uCAAuC,EAAE,CAAC;CACnD;AAED;;;GAGG;AACH,oBAAY,2CAA2C;IACrD,SAAS,cAAc;IACvB,QAAQ,aAAa;IACrB,SAAS,cAAc;IACvB,UAAU,eAAe;IACzB,WAAW,gBAAgB;IAC3B,OAAO,YAAY;IACnB,MAAM,WAAW;IACjB,oBAAoB,yBAAyB;CAC9C;AAED;;;GAGG;AACH,MAAM,WAAW,2CAA2C;IAC1D;;;OAGG;IACH,QAAQ,EAAE,GAAG,2CAA2C,EAAE,CAAC;CAC5D;AAED;;;;;GAKG;AACH,MAAM,WAAW,gDAAiD,SAAQ,2CAA2C;IACnH,QAAQ,EAAE,WAAW,CAAC;IAEtB;;;;;OAKG;IACH,KAAK,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,uCAAuC,CAAC;QAAC,UAAU,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC,CAAC;IAEtF,8EAA8E;IAC9E,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;GAKG;AACH,MAAM,WAAW,+CAAgD,SAAQ,2CAA2C;IAClH,QAAQ,EAAE,UAAU,CAAC;IAErB;;;OAGG;IACH,YAAY,EAAE,MAAM,CAAC;IAErB;;;OAGG;IACH,cAAc,CAAC,EAAE,6BAA6B,CAAC;CAChD;AAED;;;;;GAKG;AACH,MAAM,WAAW,2CAA4C,SAAQ,2CAA2C;IAC9G,QAAQ,EAAE,WAAW,CAAC;IAEtB,kEAAkE;IAClE,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED;;;;;GAKG;AACH,MAAM,WAAW,4CAA6C,SAAQ,2CAA2C;IAC/G,QAAQ,EAAE,YAAY,CAAC;CACxB;AAED;;;;;GAKG;AACH,MAAM,WAAW,6CAA8C,SAAQ,2CAA2C;IAChH,QAAQ,EAAE,aAAa,CAAC;CACzB;AAED;;;;;GAKG;AACH,MAAM,WAAW,yCAA0C,SAAQ,2CAA2C;IAC5G,QAAQ,EAAE,SAAS,CAAC;CACrB;AAED;;;;;GAKG;AACH,MAAM,WAAW,6CAA8C,SAAQ,2CAA2C;IAChH,QAAQ,EAAE,QAAQ,CAAC;IAEnB,6CAA6C;IAC7C,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;;;;GAKG;AACH,MAAM,WAAW,sDAAuD,SAAQ,2CAA2C;IACzH,QAAQ,EAAE,sBAAsB,CAAC;IAEjC;;;OAGG;IACH,qBAAqB,EAAE,6BAA6B,CAAC;CACtD;AAED;;;GAGG;AACH,oBAAY,uCAAuC,GACjD,gDAAgD,GAAG,+CAA+C,GAClG,6CAA6C,GAAG,2CAA2C,GAC3F,4CAA4C,GAAG,6CAA6C,GAC5F,yCAAyC,GAAG,sDAAsD,CAAC"}
1
+ {"version":3,"file":"InstanceLabelOverride.d.ts","sourceRoot":"","sources":["../../../../../src/presentation-common/rules/customization/InstanceLabelOverride.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAE,8BAA8B,EAAE,MAAM,wBAAwB,CAAC;AACxE,OAAO,EAAE,6BAA6B,EAAE,MAAM,kCAAkC,CAAC;AACjF,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAEnC;;;;;;GAMG;AACH,MAAM,WAAW,qBAAsB,SAAQ,QAAQ;IACrD,oCAAoC;IACpC,QAAQ,EAAE,uBAAuB,CAAC;IAElC;;OAEG;IACH,KAAK,EAAE,8BAA8B,CAAC;IAEtC;;OAEG;IACH,MAAM,EAAE,uCAAuC,EAAE,CAAC;CACnD;AAED;;;GAGG;AACH,oBAAY,2CAA2C;IACrD,SAAS,cAAc;IACvB,QAAQ,aAAa;IACrB,SAAS,cAAc;IACvB,UAAU,eAAe;IACzB,WAAW,gBAAgB;IAC3B,OAAO,YAAY;IACnB,MAAM,WAAW;IACjB,oBAAoB,yBAAyB;CAC9C;AAED;;;GAGG;AACH,MAAM,WAAW,2CAA2C;IAC1D;;;OAGG;IACH,QAAQ,EAAE,GAAG,2CAA2C,EAAE,CAAC;CAC5D;AAED;;;;;GAKG;AACH,MAAM,WAAW,gDAAiD,SAAQ,2CAA2C;IACnH,QAAQ,EAAE,WAAW,CAAC;IAEtB;;;;;OAKG;IACH,KAAK,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,uCAAuC,CAAC;QAAC,UAAU,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC,CAAC;IAEtF,8EAA8E;IAC9E,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;GAKG;AACH,MAAM,WAAW,+CAAgD,SAAQ,2CAA2C;IAClH,QAAQ,EAAE,UAAU,CAAC;IAErB;;;OAGG;IACH,YAAY,EAAE,MAAM,CAAC;IAErB;;;OAGG;IACH,cAAc,CAAC,EAAE,6BAA6B,CAAC;CAChD;AAED;;;;;GAKG;AACH,MAAM,WAAW,2CAA4C,SAAQ,2CAA2C;IAC9G,QAAQ,EAAE,WAAW,CAAC;IAEtB,kEAAkE;IAClE,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED;;;;;GAKG;AACH,MAAM,WAAW,4CAA6C,SAAQ,2CAA2C;IAC/G,QAAQ,EAAE,YAAY,CAAC;CACxB;AAED;;;;;GAKG;AACH,MAAM,WAAW,6CAA8C,SAAQ,2CAA2C;IAChH,QAAQ,EAAE,aAAa,CAAC;CACzB;AAED;;;;;GAKG;AACH,MAAM,WAAW,yCAA0C,SAAQ,2CAA2C;IAC5G,QAAQ,EAAE,SAAS,CAAC;CACrB;AAED;;;;;GAKG;AACH,MAAM,WAAW,6CAA8C,SAAQ,2CAA2C;IAChH,QAAQ,EAAE,QAAQ,CAAC;IAEnB,6CAA6C;IAC7C,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;;;;GAKG;AACH,MAAM,WAAW,sDAAuD,SAAQ,2CAA2C;IACzH,QAAQ,EAAE,sBAAsB,CAAC;IAEjC;;;OAGG;IACH,qBAAqB,EAAE,6BAA6B,CAAC;CACtD;AAED;;;GAGG;AACH,MAAM,MAAM,uCAAuC,GACjD,gDAAgD,GAAG,+CAA+C,GAClG,6CAA6C,GAAG,2CAA2C,GAC3F,4CAA4C,GAAG,6CAA6C,GAC5F,yCAAyC,GAAG,sDAAsD,CAAC"}
@@ -1,26 +1,26 @@
1
- "use strict";
2
- /*---------------------------------------------------------------------------------------------
3
- * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
4
- * See LICENSE.md in the project root for license terms and full copyright notice.
5
- *--------------------------------------------------------------------------------------------*/
6
- /** @packageDocumentation
7
- * @module PresentationRules
8
- */
9
- Object.defineProperty(exports, "__esModule", { value: true });
10
- exports.InstanceLabelOverrideValueSpecificationType = void 0;
11
- /**
12
- * Types of possible [[InstanceLabelOverride]] label values.
13
- * @public
14
- */
15
- var InstanceLabelOverrideValueSpecificationType;
16
- (function (InstanceLabelOverrideValueSpecificationType) {
17
- InstanceLabelOverrideValueSpecificationType["Composite"] = "Composite";
18
- InstanceLabelOverrideValueSpecificationType["Property"] = "Property";
19
- InstanceLabelOverrideValueSpecificationType["ClassName"] = "ClassName";
20
- InstanceLabelOverrideValueSpecificationType["ClassLabel"] = "ClassLabel";
21
- InstanceLabelOverrideValueSpecificationType["BriefcaseId"] = "BriefcaseId";
22
- InstanceLabelOverrideValueSpecificationType["LocalId"] = "LocalId";
23
- InstanceLabelOverrideValueSpecificationType["String"] = "String";
24
- InstanceLabelOverrideValueSpecificationType["RelatedInstanceLabel"] = "RelatedInstanceLabel";
25
- })(InstanceLabelOverrideValueSpecificationType = exports.InstanceLabelOverrideValueSpecificationType || (exports.InstanceLabelOverrideValueSpecificationType = {}));
1
+ "use strict";
2
+ /*---------------------------------------------------------------------------------------------
3
+ * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
4
+ * See LICENSE.md in the project root for license terms and full copyright notice.
5
+ *--------------------------------------------------------------------------------------------*/
6
+ /** @packageDocumentation
7
+ * @module PresentationRules
8
+ */
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ exports.InstanceLabelOverrideValueSpecificationType = void 0;
11
+ /**
12
+ * Types of possible [[InstanceLabelOverride]] label values.
13
+ * @public
14
+ */
15
+ var InstanceLabelOverrideValueSpecificationType;
16
+ (function (InstanceLabelOverrideValueSpecificationType) {
17
+ InstanceLabelOverrideValueSpecificationType["Composite"] = "Composite";
18
+ InstanceLabelOverrideValueSpecificationType["Property"] = "Property";
19
+ InstanceLabelOverrideValueSpecificationType["ClassName"] = "ClassName";
20
+ InstanceLabelOverrideValueSpecificationType["ClassLabel"] = "ClassLabel";
21
+ InstanceLabelOverrideValueSpecificationType["BriefcaseId"] = "BriefcaseId";
22
+ InstanceLabelOverrideValueSpecificationType["LocalId"] = "LocalId";
23
+ InstanceLabelOverrideValueSpecificationType["String"] = "String";
24
+ InstanceLabelOverrideValueSpecificationType["RelatedInstanceLabel"] = "RelatedInstanceLabel";
25
+ })(InstanceLabelOverrideValueSpecificationType = exports.InstanceLabelOverrideValueSpecificationType || (exports.InstanceLabelOverrideValueSpecificationType = {}));
26
26
  //# sourceMappingURL=InstanceLabelOverride.js.map
@@ -1,41 +1,41 @@
1
- /** @packageDocumentation
2
- * @module PresentationRules
3
- */
4
- import { RuleBase } from "../Rule";
5
- /**
6
- * Label override rules provide advanced ways to override instance labels and descriptions in
7
- * exchange of some performance penalty.
8
- *
9
- * @see [Label override reference documentation page]($docs/presentation/customization/LabelOverride.md)
10
- * @public
11
- * @deprecated in 3.x. Use [[InstanceLabelOverride]] rule instead.
12
- */
13
- export interface LabelOverride extends RuleBase {
14
- /** Used for serializing to JSON. */
15
- ruleType: "LabelOverride";
16
- /**
17
- * Defines a condition for the rule, which needs to be met in order to execute it. Condition
18
- * is an [ECExpression]($docs/presentation/advanced/ECExpressions.md), which can use
19
- * a [limited set of symbols]($docs/presentation/customization/ECExpressions.md#rule-condition).
20
- */
21
- condition?: string;
22
- /**
23
- * An expression whose result becomes the label. This is
24
- * an [ECExpression]($docs/presentation/customization/ECExpressions.md), so label
25
- * can be defined/formatted dynamically based on the context - for example
26
- * ECInstance property value. May be [localized]($docs/presentation/advanced/Localization.md).
27
- *
28
- * @minLength 1
29
- */
30
- label?: string;
31
- /**
32
- * An expression whose result becomes the description. This is
33
- * an [ECExpression]($docs/presentation/customization/ECExpressions.md), so
34
- * description can be defined/formatted dynamically based on the context - for example
35
- * ECInstance property value. May be [localized]($docs/presentation/advanced/Localization.md).
36
- *
37
- * @minLength 1
38
- */
39
- description?: string;
40
- }
1
+ /** @packageDocumentation
2
+ * @module PresentationRules
3
+ */
4
+ import { RuleBase } from "../Rule";
5
+ /**
6
+ * Label override rules provide advanced ways to override instance labels and descriptions in
7
+ * exchange of some performance penalty.
8
+ *
9
+ * @see [Label override reference documentation page]($docs/presentation/customization/LabelOverride.md)
10
+ * @public
11
+ * @deprecated in 3.x. Use [[InstanceLabelOverride]] rule instead.
12
+ */
13
+ export interface LabelOverride extends RuleBase {
14
+ /** Used for serializing to JSON. */
15
+ ruleType: "LabelOverride";
16
+ /**
17
+ * Defines a condition for the rule, which needs to be met in order to execute it. Condition
18
+ * is an [ECExpression]($docs/presentation/advanced/ECExpressions.md), which can use
19
+ * a [limited set of symbols]($docs/presentation/customization/ECExpressions.md#rule-condition).
20
+ */
21
+ condition?: string;
22
+ /**
23
+ * An expression whose result becomes the label. This is
24
+ * an [ECExpression]($docs/presentation/customization/ECExpressions.md), so label
25
+ * can be defined/formatted dynamically based on the context - for example
26
+ * ECInstance property value. May be [localized]($docs/presentation/advanced/Localization.md).
27
+ *
28
+ * @minLength 1
29
+ */
30
+ label?: string;
31
+ /**
32
+ * An expression whose result becomes the description. This is
33
+ * an [ECExpression]($docs/presentation/customization/ECExpressions.md), so
34
+ * description can be defined/formatted dynamically based on the context - for example
35
+ * ECInstance property value. May be [localized]($docs/presentation/advanced/Localization.md).
36
+ *
37
+ * @minLength 1
38
+ */
39
+ description?: string;
40
+ }
41
41
  //# sourceMappingURL=LabelOverride.d.ts.map
@@ -1,10 +1,10 @@
1
- "use strict";
2
- /*---------------------------------------------------------------------------------------------
3
- * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
4
- * See LICENSE.md in the project root for license terms and full copyright notice.
5
- *--------------------------------------------------------------------------------------------*/
6
- /** @packageDocumentation
7
- * @module PresentationRules
8
- */
9
- Object.defineProperty(exports, "__esModule", { value: true });
1
+ "use strict";
2
+ /*---------------------------------------------------------------------------------------------
3
+ * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
4
+ * See LICENSE.md in the project root for license terms and full copyright notice.
5
+ *--------------------------------------------------------------------------------------------*/
6
+ /** @packageDocumentation
7
+ * @module PresentationRules
8
+ */
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
10
  //# sourceMappingURL=LabelOverride.js.map
@@ -1,59 +1,59 @@
1
- /** @packageDocumentation
2
- * @module PresentationRules
3
- */
4
- import { SingleSchemaClassSpecification } from "../ClassSpecifications";
5
- import { RuleBase } from "../Rule";
6
- /**
7
- * Sorting rules provide a way to either disable sorting or sort instances by specific properties.
8
- *
9
- * @see [Sorting rule reference documentation page]($docs/presentation/customization/SortingRule.md)
10
- * @public
11
- */
12
- export interface SortingRuleBase extends RuleBase {
13
- /**
14
- * Defines a condition which needs to be met in order for the rule to be used. The condition is an
15
- * [ECExpression]($docs/presentation/customization/ECExpressions.md#rule-condition) which has to
16
- * evaluate to a boolean value.
17
- */
18
- condition?: string;
19
- /** Specifies ECClass whose ECInstances should be sorted. */
20
- class?: SingleSchemaClassSpecification;
21
- /** Specifies that [[class]] attribute defined in this rule should be handled polymorphically. */
22
- isPolymorphic?: boolean;
23
- }
24
- /**
25
- * Sorting rules provide a way to either disable sorting or sort instances by specific properties.
26
- *
27
- * @see [Sorting rule reference documentation page]($docs/presentation/customization/SortingRule.md)
28
- * @public
29
- */
30
- export declare type SortingRule = PropertySortingRule | DisabledSortingRule;
31
- /**
32
- * Rule to configure sorting for certain ECInstances in the hierarchy and/or content. It is possible to configure different sorting for different types of ECInstances.
33
- *
34
- * @see [Property sorting rule reference documentation section]($docs/presentation/customization/SortingRule.md#property-sorting-rule)
35
- * @public
36
- */
37
- export interface PropertySortingRule extends SortingRuleBase {
38
- /** Used for serializing to JSON. */
39
- ruleType: "PropertySorting";
40
- /**
41
- * Specifies name of the property which should be used for sorting.
42
- *
43
- * @minLength 1
44
- */
45
- propertyName: string;
46
- /** Specifies whether instances should be sorted in ascending order or descending. */
47
- sortAscending?: boolean;
48
- }
49
- /**
50
- * Rule to disable sorting for certain ECInstances in the hierarchy and/or content.
51
- *
52
- * @see [Disabled sorting rule reference documentation section]($docs/presentation/customization/SortingRule.md#disabled-sorting-rule)
53
- * @public
54
- */
55
- export interface DisabledSortingRule extends SortingRuleBase {
56
- /** Used for serializing to JSON. */
57
- ruleType: "DisabledSorting";
58
- }
1
+ /** @packageDocumentation
2
+ * @module PresentationRules
3
+ */
4
+ import { SingleSchemaClassSpecification } from "../ClassSpecifications";
5
+ import { RuleBase } from "../Rule";
6
+ /**
7
+ * Sorting rules provide a way to either disable sorting or sort instances by specific properties.
8
+ *
9
+ * @see [Sorting rule reference documentation page]($docs/presentation/customization/SortingRule.md)
10
+ * @public
11
+ */
12
+ export interface SortingRuleBase extends RuleBase {
13
+ /**
14
+ * Defines a condition which needs to be met in order for the rule to be used. The condition is an
15
+ * [ECExpression]($docs/presentation/customization/ECExpressions.md#rule-condition) which has to
16
+ * evaluate to a boolean value.
17
+ */
18
+ condition?: string;
19
+ /** Specifies ECClass whose ECInstances should be sorted. */
20
+ class?: SingleSchemaClassSpecification;
21
+ /** Specifies that [[class]] attribute defined in this rule should be handled polymorphically. */
22
+ isPolymorphic?: boolean;
23
+ }
24
+ /**
25
+ * Sorting rules provide a way to either disable sorting or sort instances by specific properties.
26
+ *
27
+ * @see [Sorting rule reference documentation page]($docs/presentation/customization/SortingRule.md)
28
+ * @public
29
+ */
30
+ export type SortingRule = PropertySortingRule | DisabledSortingRule;
31
+ /**
32
+ * Rule to configure sorting for certain ECInstances in the hierarchy and/or content. It is possible to configure different sorting for different types of ECInstances.
33
+ *
34
+ * @see [Property sorting rule reference documentation section]($docs/presentation/customization/SortingRule.md#property-sorting-rule)
35
+ * @public
36
+ */
37
+ export interface PropertySortingRule extends SortingRuleBase {
38
+ /** Used for serializing to JSON. */
39
+ ruleType: "PropertySorting";
40
+ /**
41
+ * Specifies name of the property which should be used for sorting.
42
+ *
43
+ * @minLength 1
44
+ */
45
+ propertyName: string;
46
+ /** Specifies whether instances should be sorted in ascending order or descending. */
47
+ sortAscending?: boolean;
48
+ }
49
+ /**
50
+ * Rule to disable sorting for certain ECInstances in the hierarchy and/or content.
51
+ *
52
+ * @see [Disabled sorting rule reference documentation section]($docs/presentation/customization/SortingRule.md#disabled-sorting-rule)
53
+ * @public
54
+ */
55
+ export interface DisabledSortingRule extends SortingRuleBase {
56
+ /** Used for serializing to JSON. */
57
+ ruleType: "DisabledSorting";
58
+ }
59
59
  //# sourceMappingURL=SortingRule.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"SortingRule.d.ts","sourceRoot":"","sources":["../../../../../src/presentation-common/rules/customization/SortingRule.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAE,8BAA8B,EAAE,MAAM,wBAAwB,CAAC;AACxE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAEnC;;;;;GAKG;AACH,MAAM,WAAW,eAAgB,SAAQ,QAAQ;IAC/C;;;;OAIG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,4DAA4D;IAC5D,KAAK,CAAC,EAAE,8BAA8B,CAAC;IAEvC,iGAAiG;IACjG,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAED;;;;;GAKG;AACH,oBAAY,WAAW,GAAG,mBAAmB,GAAG,mBAAmB,CAAC;AAEpE;;;;;GAKG;AACH,MAAM,WAAW,mBAAoB,SAAQ,eAAe;IAC1D,oCAAoC;IACpC,QAAQ,EAAE,iBAAiB,CAAC;IAE5B;;;;OAIG;IACH,YAAY,EAAE,MAAM,CAAC;IAErB,qFAAqF;IACrF,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAED;;;;;GAKG;AACH,MAAM,WAAW,mBAAoB,SAAQ,eAAe;IAC1D,oCAAoC;IACpC,QAAQ,EAAE,iBAAiB,CAAC;CAC7B"}
1
+ {"version":3,"file":"SortingRule.d.ts","sourceRoot":"","sources":["../../../../../src/presentation-common/rules/customization/SortingRule.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAE,8BAA8B,EAAE,MAAM,wBAAwB,CAAC;AACxE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAEnC;;;;;GAKG;AACH,MAAM,WAAW,eAAgB,SAAQ,QAAQ;IAC/C;;;;OAIG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,4DAA4D;IAC5D,KAAK,CAAC,EAAE,8BAA8B,CAAC;IAEvC,iGAAiG;IACjG,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAED;;;;;GAKG;AACH,MAAM,MAAM,WAAW,GAAG,mBAAmB,GAAG,mBAAmB,CAAC;AAEpE;;;;;GAKG;AACH,MAAM,WAAW,mBAAoB,SAAQ,eAAe;IAC1D,oCAAoC;IACpC,QAAQ,EAAE,iBAAiB,CAAC;IAE5B;;;;OAIG;IACH,YAAY,EAAE,MAAM,CAAC;IAErB,qFAAqF;IACrF,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAED;;;;;GAKG;AACH,MAAM,WAAW,mBAAoB,SAAQ,eAAe;IAC1D,oCAAoC;IACpC,QAAQ,EAAE,iBAAiB,CAAC;CAC7B"}
@@ -1,10 +1,10 @@
1
- "use strict";
2
- /*---------------------------------------------------------------------------------------------
3
- * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
4
- * See LICENSE.md in the project root for license terms and full copyright notice.
5
- *--------------------------------------------------------------------------------------------*/
6
- /** @packageDocumentation
7
- * @module PresentationRules
8
- */
9
- Object.defineProperty(exports, "__esModule", { value: true });
1
+ "use strict";
2
+ /*---------------------------------------------------------------------------------------------
3
+ * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
4
+ * See LICENSE.md in the project root for license terms and full copyright notice.
5
+ *--------------------------------------------------------------------------------------------*/
6
+ /** @packageDocumentation
7
+ * @module PresentationRules
8
+ */
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
10
  //# sourceMappingURL=SortingRule.js.map