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

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 (417) hide show
  1. package/CHANGELOG.md +51 -1
  2. package/Ruleset.schema.json +11 -0
  3. package/lib/cjs/assets/locales/en/Presentation.json +15 -0
  4. package/lib/cjs/assets/locales/en-PSEUDO/Presentation.json +15 -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/LabelDefinition.d.ts +93 -87
  30. package/lib/cjs/presentation-common/LabelDefinition.d.ts.map +1 -1
  31. package/lib/cjs/presentation-common/LabelDefinition.js +78 -73
  32. package/lib/cjs/presentation-common/LabelDefinition.js.map +1 -1
  33. package/lib/cjs/presentation-common/LocalizationHelper.d.ts +29 -29
  34. package/lib/cjs/presentation-common/LocalizationHelper.js +110 -110
  35. package/lib/cjs/presentation-common/PresentationIpcInterface.d.ts +40 -40
  36. package/lib/cjs/presentation-common/PresentationIpcInterface.js +12 -12
  37. package/lib/cjs/presentation-common/PresentationManagerOptions.d.ts +273 -261
  38. package/lib/cjs/presentation-common/PresentationManagerOptions.d.ts.map +1 -1
  39. package/lib/cjs/presentation-common/PresentationManagerOptions.js +23 -23
  40. package/lib/cjs/presentation-common/PresentationManagerOptions.js.map +1 -1
  41. package/lib/cjs/presentation-common/PresentationRpcInterface.d.ts +186 -186
  42. package/lib/cjs/presentation-common/PresentationRpcInterface.d.ts.map +1 -1
  43. package/lib/cjs/presentation-common/PresentationRpcInterface.js +108 -104
  44. package/lib/cjs/presentation-common/PresentationRpcInterface.js.map +1 -1
  45. package/lib/cjs/presentation-common/PropertyFormatter.d.ts +31 -0
  46. package/lib/cjs/presentation-common/PropertyFormatter.d.ts.map +1 -0
  47. package/lib/cjs/presentation-common/PropertyFormatter.js +199 -0
  48. package/lib/cjs/presentation-common/PropertyFormatter.js.map +1 -0
  49. package/lib/cjs/presentation-common/RegisteredRuleset.d.ts +26 -26
  50. package/lib/cjs/presentation-common/RegisteredRuleset.js +33 -33
  51. package/lib/cjs/presentation-common/RpcRequestsHandler.d.ts +82 -83
  52. package/lib/cjs/presentation-common/RpcRequestsHandler.d.ts.map +1 -1
  53. package/lib/cjs/presentation-common/RpcRequestsHandler.js +166 -171
  54. package/lib/cjs/presentation-common/RpcRequestsHandler.js.map +1 -1
  55. package/lib/cjs/presentation-common/RulesetVariables.d.ts +171 -171
  56. package/lib/cjs/presentation-common/RulesetVariables.d.ts.map +1 -1
  57. package/lib/cjs/presentation-common/RulesetVariables.js +55 -55
  58. package/lib/cjs/presentation-common/RulesetsFactory.d.ts +44 -44
  59. package/lib/cjs/presentation-common/RulesetsFactory.d.ts.map +1 -1
  60. package/lib/cjs/presentation-common/RulesetsFactory.js +223 -223
  61. package/lib/cjs/presentation-common/RulesetsFactory.js.map +1 -1
  62. package/lib/cjs/presentation-common/Update.d.ts +213 -213
  63. package/lib/cjs/presentation-common/Update.d.ts.map +1 -1
  64. package/lib/cjs/presentation-common/Update.js +226 -226
  65. package/lib/cjs/presentation-common/Utils.d.ts +62 -62
  66. package/lib/cjs/presentation-common/Utils.d.ts.map +1 -1
  67. package/lib/cjs/presentation-common/Utils.js +43 -43
  68. package/lib/cjs/presentation-common/content/Category.d.ts +49 -49
  69. package/lib/cjs/presentation-common/content/Category.js +48 -48
  70. package/lib/cjs/presentation-common/content/Content.d.ts +38 -38
  71. package/lib/cjs/presentation-common/content/Content.js +56 -56
  72. package/lib/cjs/presentation-common/content/ContentTraverser.d.ts +271 -271
  73. package/lib/cjs/presentation-common/content/ContentTraverser.js +437 -439
  74. package/lib/cjs/presentation-common/content/ContentTraverser.js.map +1 -1
  75. package/lib/cjs/presentation-common/content/Descriptor.d.ts +328 -328
  76. package/lib/cjs/presentation-common/content/Descriptor.js +191 -193
  77. package/lib/cjs/presentation-common/content/Descriptor.js.map +1 -1
  78. package/lib/cjs/presentation-common/content/DisplayTypes.d.ts +21 -21
  79. package/lib/cjs/presentation-common/content/DisplayTypes.js +29 -29
  80. package/lib/cjs/presentation-common/content/Editor.d.ts +15 -15
  81. package/lib/cjs/presentation-common/content/Editor.js +9 -9
  82. package/lib/cjs/presentation-common/content/Fields.d.ts +298 -301
  83. package/lib/cjs/presentation-common/content/Fields.d.ts.map +1 -1
  84. package/lib/cjs/presentation-common/content/Fields.js +393 -397
  85. package/lib/cjs/presentation-common/content/Fields.js.map +1 -1
  86. package/lib/cjs/presentation-common/content/Item.d.ts +85 -85
  87. package/lib/cjs/presentation-common/content/Item.d.ts.map +1 -1
  88. package/lib/cjs/presentation-common/content/Item.js +84 -84
  89. package/lib/cjs/presentation-common/content/Item.js.map +1 -1
  90. package/lib/cjs/presentation-common/content/Property.d.ts +57 -57
  91. package/lib/cjs/presentation-common/content/Property.d.ts.map +1 -1
  92. package/lib/cjs/presentation-common/content/Property.js +40 -40
  93. package/lib/cjs/presentation-common/content/Renderer.d.ts +11 -11
  94. package/lib/cjs/presentation-common/content/Renderer.js +9 -9
  95. package/lib/cjs/presentation-common/content/TypeDescription.d.ts +72 -72
  96. package/lib/cjs/presentation-common/content/TypeDescription.d.ts.map +1 -1
  97. package/lib/cjs/presentation-common/content/TypeDescription.js +23 -23
  98. package/lib/cjs/presentation-common/content/Value.d.ts +189 -189
  99. package/lib/cjs/presentation-common/content/Value.d.ts.map +1 -1
  100. package/lib/cjs/presentation-common/content/Value.js +273 -273
  101. package/lib/cjs/presentation-common/hierarchy/HierarchyLevel.d.ts +37 -37
  102. package/lib/cjs/presentation-common/hierarchy/HierarchyLevel.js +31 -31
  103. package/lib/cjs/presentation-common/hierarchy/Key.d.ts +246 -246
  104. package/lib/cjs/presentation-common/hierarchy/Key.d.ts.map +1 -1
  105. package/lib/cjs/presentation-common/hierarchy/Key.js +121 -121
  106. package/lib/cjs/presentation-common/hierarchy/Key.js.map +1 -1
  107. package/lib/cjs/presentation-common/hierarchy/Node.d.ts +154 -154
  108. package/lib/cjs/presentation-common/hierarchy/Node.d.ts.map +1 -1
  109. package/lib/cjs/presentation-common/hierarchy/Node.js +106 -106
  110. package/lib/cjs/presentation-common/hierarchy/Node.js.map +1 -1
  111. package/lib/cjs/presentation-common/hierarchy/NodePathElement.d.ts +96 -96
  112. package/lib/cjs/presentation-common/hierarchy/NodePathElement.js +122 -122
  113. package/lib/cjs/presentation-common/rules/ClassSpecifications.d.ts +45 -45
  114. package/lib/cjs/presentation-common/rules/ClassSpecifications.js +9 -9
  115. package/lib/cjs/presentation-common/rules/RelatedInstanceSpecification.d.ts +31 -31
  116. package/lib/cjs/presentation-common/rules/RelatedInstanceSpecification.js +9 -9
  117. package/lib/cjs/presentation-common/rules/RelationshipDirection.d.ts +13 -13
  118. package/lib/cjs/presentation-common/rules/RelationshipDirection.js +21 -21
  119. package/lib/cjs/presentation-common/rules/RelationshipPathSpecification.d.ts +56 -56
  120. package/lib/cjs/presentation-common/rules/RelationshipPathSpecification.d.ts.map +1 -1
  121. package/lib/cjs/presentation-common/rules/RelationshipPathSpecification.js +9 -9
  122. package/lib/cjs/presentation-common/rules/Rule.d.ts +76 -76
  123. package/lib/cjs/presentation-common/rules/Rule.js +35 -35
  124. package/lib/cjs/presentation-common/rules/Ruleset.d.ts +65 -65
  125. package/lib/cjs/presentation-common/rules/Ruleset.js +9 -9
  126. package/lib/cjs/presentation-common/rules/SchemasSpecification.d.ts +41 -41
  127. package/lib/cjs/presentation-common/rules/SchemasSpecification.js +9 -9
  128. package/lib/cjs/presentation-common/rules/Variables.d.ts +58 -58
  129. package/lib/cjs/presentation-common/rules/Variables.js +25 -25
  130. package/lib/cjs/presentation-common/rules/content/ContentInstancesOfSpecificClassesSpecification.d.ts +41 -41
  131. package/lib/cjs/presentation-common/rules/content/ContentInstancesOfSpecificClassesSpecification.js +9 -9
  132. package/lib/cjs/presentation-common/rules/content/ContentRelatedInstancesSpecification.d.ts +25 -25
  133. package/lib/cjs/presentation-common/rules/content/ContentRelatedInstancesSpecification.js +9 -9
  134. package/lib/cjs/presentation-common/rules/content/ContentRule.d.ts +30 -30
  135. package/lib/cjs/presentation-common/rules/content/ContentRule.js +9 -9
  136. package/lib/cjs/presentation-common/rules/content/ContentSpecification.d.ts +58 -58
  137. package/lib/cjs/presentation-common/rules/content/ContentSpecification.js +20 -20
  138. package/lib/cjs/presentation-common/rules/content/DefaultPropertyCategoryOverride.d.ts +19 -19
  139. package/lib/cjs/presentation-common/rules/content/DefaultPropertyCategoryOverride.js +9 -9
  140. package/lib/cjs/presentation-common/rules/content/PropertySpecification.d.ts +86 -86
  141. package/lib/cjs/presentation-common/rules/content/PropertySpecification.js +9 -9
  142. package/lib/cjs/presentation-common/rules/content/SelectedNodeInstancesSpecification.d.ts +28 -28
  143. package/lib/cjs/presentation-common/rules/content/SelectedNodeInstancesSpecification.js +9 -9
  144. package/lib/cjs/presentation-common/rules/content/modifiers/CalculatedPropertiesSpecification.d.ts +25 -25
  145. package/lib/cjs/presentation-common/rules/content/modifiers/CalculatedPropertiesSpecification.js +9 -9
  146. package/lib/cjs/presentation-common/rules/content/modifiers/ContentModifier.d.ts +57 -57
  147. package/lib/cjs/presentation-common/rules/content/modifiers/ContentModifier.js +9 -9
  148. package/lib/cjs/presentation-common/rules/content/modifiers/CustomRendererSpecification.d.ts +17 -17
  149. package/lib/cjs/presentation-common/rules/content/modifiers/CustomRendererSpecification.js +9 -9
  150. package/lib/cjs/presentation-common/rules/content/modifiers/PropertyCategorySpecification.d.ts +107 -107
  151. package/lib/cjs/presentation-common/rules/content/modifiers/PropertyCategorySpecification.d.ts.map +1 -1
  152. package/lib/cjs/presentation-common/rules/content/modifiers/PropertyCategorySpecification.js +9 -9
  153. package/lib/cjs/presentation-common/rules/content/modifiers/PropertyEditorsSpecification.d.ts +108 -108
  154. package/lib/cjs/presentation-common/rules/content/modifiers/PropertyEditorsSpecification.js +21 -21
  155. package/lib/cjs/presentation-common/rules/content/modifiers/RelatedPropertiesSpecification.d.ts +96 -96
  156. package/lib/cjs/presentation-common/rules/content/modifiers/RelatedPropertiesSpecification.js +43 -43
  157. package/lib/cjs/presentation-common/rules/customization/CheckBoxRule.d.ts +44 -44
  158. package/lib/cjs/presentation-common/rules/customization/CheckBoxRule.js +9 -9
  159. package/lib/cjs/presentation-common/rules/customization/CustomizationRule.d.ts +36 -36
  160. package/lib/cjs/presentation-common/rules/customization/CustomizationRule.js +9 -9
  161. package/lib/cjs/presentation-common/rules/customization/ExtendedDataRule.d.ts +27 -27
  162. package/lib/cjs/presentation-common/rules/customization/ExtendedDataRule.js +9 -9
  163. package/lib/cjs/presentation-common/rules/customization/GroupingRule.d.ts +207 -207
  164. package/lib/cjs/presentation-common/rules/customization/GroupingRule.js +51 -51
  165. package/lib/cjs/presentation-common/rules/customization/ImageIdOverride.d.ts +29 -29
  166. package/lib/cjs/presentation-common/rules/customization/ImageIdOverride.js +9 -9
  167. package/lib/cjs/presentation-common/rules/customization/InstanceLabelOverride.d.ts +158 -158
  168. package/lib/cjs/presentation-common/rules/customization/InstanceLabelOverride.d.ts.map +1 -1
  169. package/lib/cjs/presentation-common/rules/customization/InstanceLabelOverride.js +25 -25
  170. package/lib/cjs/presentation-common/rules/customization/LabelOverride.d.ts +40 -40
  171. package/lib/cjs/presentation-common/rules/customization/LabelOverride.js +9 -9
  172. package/lib/cjs/presentation-common/rules/customization/SortingRule.d.ts +58 -58
  173. package/lib/cjs/presentation-common/rules/customization/SortingRule.d.ts.map +1 -1
  174. package/lib/cjs/presentation-common/rules/customization/SortingRule.js +9 -9
  175. package/lib/cjs/presentation-common/rules/customization/StyleOverride.d.ts +48 -48
  176. package/lib/cjs/presentation-common/rules/customization/StyleOverride.js +9 -9
  177. package/lib/cjs/presentation-common/rules/hierarchy/ChildNodeRule.d.ts +14 -14
  178. package/lib/cjs/presentation-common/rules/hierarchy/ChildNodeRule.js +9 -9
  179. package/lib/cjs/presentation-common/rules/hierarchy/ChildNodeSpecification.d.ts +98 -98
  180. package/lib/cjs/presentation-common/rules/hierarchy/ChildNodeSpecification.d.ts.map +1 -1
  181. package/lib/cjs/presentation-common/rules/hierarchy/ChildNodeSpecification.js +21 -21
  182. package/lib/cjs/presentation-common/rules/hierarchy/CustomNodeSpecification.d.ts +31 -31
  183. package/lib/cjs/presentation-common/rules/hierarchy/CustomNodeSpecification.js +9 -9
  184. package/lib/cjs/presentation-common/rules/hierarchy/CustomQueryInstanceNodesSpecification.d.ts +79 -79
  185. package/lib/cjs/presentation-common/rules/hierarchy/CustomQueryInstanceNodesSpecification.js +19 -19
  186. package/lib/cjs/presentation-common/rules/hierarchy/InstanceNodesOfSpecificClassesSpecification.d.ts +39 -39
  187. package/lib/cjs/presentation-common/rules/hierarchy/InstanceNodesOfSpecificClassesSpecification.js +9 -9
  188. package/lib/cjs/presentation-common/rules/hierarchy/NavigationRule.d.ts +50 -50
  189. package/lib/cjs/presentation-common/rules/hierarchy/NavigationRule.d.ts.map +1 -1
  190. package/lib/cjs/presentation-common/rules/hierarchy/NavigationRule.js +9 -9
  191. package/lib/cjs/presentation-common/rules/hierarchy/NodeArtifactsRule.d.ts +27 -27
  192. package/lib/cjs/presentation-common/rules/hierarchy/NodeArtifactsRule.js +9 -9
  193. package/lib/cjs/presentation-common/rules/hierarchy/RelatedInstanceNodesSpecification.d.ts +27 -27
  194. package/lib/cjs/presentation-common/rules/hierarchy/RelatedInstanceNodesSpecification.js +9 -9
  195. package/lib/cjs/presentation-common/rules/hierarchy/RootNodeRule.d.ts +16 -16
  196. package/lib/cjs/presentation-common/rules/hierarchy/RootNodeRule.js +9 -9
  197. package/lib/cjs/presentation-common/rules/hierarchy/SubCondition.d.ts +35 -35
  198. package/lib/cjs/presentation-common/rules/hierarchy/SubCondition.js +9 -9
  199. package/lib/cjs/presentation-common/selection/SelectionScope.d.ts +38 -38
  200. package/lib/cjs/presentation-common/selection/SelectionScope.d.ts.map +1 -1
  201. package/lib/cjs/presentation-common/selection/SelectionScope.js +9 -9
  202. package/lib/cjs/presentation-common.d.ts +113 -112
  203. package/lib/cjs/presentation-common.d.ts.map +1 -1
  204. package/lib/cjs/presentation-common.js +133 -128
  205. package/lib/cjs/presentation-common.js.map +1 -1
  206. package/lib/esm/presentation-common/AsyncTasks.d.ts +22 -22
  207. package/lib/esm/presentation-common/AsyncTasks.js +34 -34
  208. package/lib/esm/presentation-common/CommonLoggerCategory.d.ts +12 -12
  209. package/lib/esm/presentation-common/CommonLoggerCategory.js +17 -17
  210. package/lib/esm/presentation-common/Diagnostics.d.ts +125 -125
  211. package/lib/esm/presentation-common/Diagnostics.d.ts.map +1 -1
  212. package/lib/esm/presentation-common/Diagnostics.js +67 -67
  213. package/lib/esm/presentation-common/EC.d.ts +347 -350
  214. package/lib/esm/presentation-common/EC.d.ts.map +1 -1
  215. package/lib/esm/presentation-common/EC.js +287 -287
  216. package/lib/esm/presentation-common/EC.js.map +1 -1
  217. package/lib/esm/presentation-common/ElementProperties.d.ts +123 -123
  218. package/lib/esm/presentation-common/ElementProperties.d.ts.map +1 -1
  219. package/lib/esm/presentation-common/ElementProperties.js +8 -8
  220. package/lib/esm/presentation-common/Error.d.ts +47 -45
  221. package/lib/esm/presentation-common/Error.d.ts.map +1 -1
  222. package/lib/esm/presentation-common/Error.js +60 -58
  223. package/lib/esm/presentation-common/Error.js.map +1 -1
  224. package/lib/esm/presentation-common/InstanceFilterDefinition.d.ts +93 -93
  225. package/lib/esm/presentation-common/InstanceFilterDefinition.d.ts.map +1 -1
  226. package/lib/esm/presentation-common/InstanceFilterDefinition.js +8 -8
  227. package/lib/esm/presentation-common/KeySet.d.ts +146 -146
  228. package/lib/esm/presentation-common/KeySet.d.ts.map +1 -1
  229. package/lib/esm/presentation-common/KeySet.js +424 -424
  230. package/lib/esm/presentation-common/LabelDefinition.d.ts +93 -87
  231. package/lib/esm/presentation-common/LabelDefinition.d.ts.map +1 -1
  232. package/lib/esm/presentation-common/LabelDefinition.js +75 -70
  233. package/lib/esm/presentation-common/LabelDefinition.js.map +1 -1
  234. package/lib/esm/presentation-common/LocalizationHelper.d.ts +29 -29
  235. package/lib/esm/presentation-common/LocalizationHelper.js +106 -106
  236. package/lib/esm/presentation-common/PresentationIpcInterface.d.ts +40 -40
  237. package/lib/esm/presentation-common/PresentationIpcInterface.js +9 -9
  238. package/lib/esm/presentation-common/PresentationManagerOptions.d.ts +273 -261
  239. package/lib/esm/presentation-common/PresentationManagerOptions.d.ts.map +1 -1
  240. package/lib/esm/presentation-common/PresentationManagerOptions.js +18 -18
  241. package/lib/esm/presentation-common/PresentationManagerOptions.js.map +1 -1
  242. package/lib/esm/presentation-common/PresentationRpcInterface.d.ts +186 -186
  243. package/lib/esm/presentation-common/PresentationRpcInterface.d.ts.map +1 -1
  244. package/lib/esm/presentation-common/PresentationRpcInterface.js +105 -100
  245. package/lib/esm/presentation-common/PresentationRpcInterface.js.map +1 -1
  246. package/lib/esm/presentation-common/PropertyFormatter.d.ts +31 -0
  247. package/lib/esm/presentation-common/PropertyFormatter.d.ts.map +1 -0
  248. package/lib/esm/presentation-common/PropertyFormatter.js +194 -0
  249. package/lib/esm/presentation-common/PropertyFormatter.js.map +1 -0
  250. package/lib/esm/presentation-common/RegisteredRuleset.d.ts +26 -26
  251. package/lib/esm/presentation-common/RegisteredRuleset.js +29 -29
  252. package/lib/esm/presentation-common/RpcRequestsHandler.d.ts +82 -83
  253. package/lib/esm/presentation-common/RpcRequestsHandler.d.ts.map +1 -1
  254. package/lib/esm/presentation-common/RpcRequestsHandler.js +162 -167
  255. package/lib/esm/presentation-common/RpcRequestsHandler.js.map +1 -1
  256. package/lib/esm/presentation-common/RulesetVariables.d.ts +171 -171
  257. package/lib/esm/presentation-common/RulesetVariables.d.ts.map +1 -1
  258. package/lib/esm/presentation-common/RulesetVariables.js +52 -52
  259. package/lib/esm/presentation-common/RulesetsFactory.d.ts +44 -44
  260. package/lib/esm/presentation-common/RulesetsFactory.d.ts.map +1 -1
  261. package/lib/esm/presentation-common/RulesetsFactory.js +219 -219
  262. package/lib/esm/presentation-common/RulesetsFactory.js.map +1 -1
  263. package/lib/esm/presentation-common/Update.d.ts +213 -213
  264. package/lib/esm/presentation-common/Update.d.ts.map +1 -1
  265. package/lib/esm/presentation-common/Update.js +223 -223
  266. package/lib/esm/presentation-common/Utils.d.ts +62 -62
  267. package/lib/esm/presentation-common/Utils.d.ts.map +1 -1
  268. package/lib/esm/presentation-common/Utils.js +39 -39
  269. package/lib/esm/presentation-common/content/Category.d.ts +49 -49
  270. package/lib/esm/presentation-common/content/Category.js +45 -45
  271. package/lib/esm/presentation-common/content/Content.d.ts +38 -38
  272. package/lib/esm/presentation-common/content/Content.js +52 -52
  273. package/lib/esm/presentation-common/content/ContentTraverser.d.ts +271 -271
  274. package/lib/esm/presentation-common/content/ContentTraverser.js +427 -429
  275. package/lib/esm/presentation-common/content/ContentTraverser.js.map +1 -1
  276. package/lib/esm/presentation-common/content/Descriptor.d.ts +328 -328
  277. package/lib/esm/presentation-common/content/Descriptor.js +187 -189
  278. package/lib/esm/presentation-common/content/Descriptor.js.map +1 -1
  279. package/lib/esm/presentation-common/content/DisplayTypes.d.ts +21 -21
  280. package/lib/esm/presentation-common/content/DisplayTypes.js +26 -26
  281. package/lib/esm/presentation-common/content/Editor.d.ts +15 -15
  282. package/lib/esm/presentation-common/content/Editor.js +8 -8
  283. package/lib/esm/presentation-common/content/Fields.d.ts +298 -301
  284. package/lib/esm/presentation-common/content/Fields.d.ts.map +1 -1
  285. package/lib/esm/presentation-common/content/Fields.js +386 -390
  286. package/lib/esm/presentation-common/content/Fields.js.map +1 -1
  287. package/lib/esm/presentation-common/content/Item.d.ts +85 -85
  288. package/lib/esm/presentation-common/content/Item.d.ts.map +1 -1
  289. package/lib/esm/presentation-common/content/Item.js +80 -80
  290. package/lib/esm/presentation-common/content/Item.js.map +1 -1
  291. package/lib/esm/presentation-common/content/Property.d.ts +57 -57
  292. package/lib/esm/presentation-common/content/Property.d.ts.map +1 -1
  293. package/lib/esm/presentation-common/content/Property.js +37 -37
  294. package/lib/esm/presentation-common/content/Renderer.d.ts +11 -11
  295. package/lib/esm/presentation-common/content/Renderer.js +8 -8
  296. package/lib/esm/presentation-common/content/TypeDescription.d.ts +72 -72
  297. package/lib/esm/presentation-common/content/TypeDescription.d.ts.map +1 -1
  298. package/lib/esm/presentation-common/content/TypeDescription.js +20 -20
  299. package/lib/esm/presentation-common/content/Value.d.ts +189 -189
  300. package/lib/esm/presentation-common/content/Value.d.ts.map +1 -1
  301. package/lib/esm/presentation-common/content/Value.js +270 -270
  302. package/lib/esm/presentation-common/hierarchy/HierarchyLevel.d.ts +37 -37
  303. package/lib/esm/presentation-common/hierarchy/HierarchyLevel.js +28 -28
  304. package/lib/esm/presentation-common/hierarchy/Key.d.ts +246 -246
  305. package/lib/esm/presentation-common/hierarchy/Key.d.ts.map +1 -1
  306. package/lib/esm/presentation-common/hierarchy/Key.js +118 -118
  307. package/lib/esm/presentation-common/hierarchy/Key.js.map +1 -1
  308. package/lib/esm/presentation-common/hierarchy/Node.d.ts +154 -154
  309. package/lib/esm/presentation-common/hierarchy/Node.d.ts.map +1 -1
  310. package/lib/esm/presentation-common/hierarchy/Node.js +103 -103
  311. package/lib/esm/presentation-common/hierarchy/Node.js.map +1 -1
  312. package/lib/esm/presentation-common/hierarchy/NodePathElement.d.ts +96 -96
  313. package/lib/esm/presentation-common/hierarchy/NodePathElement.js +119 -119
  314. package/lib/esm/presentation-common/rules/ClassSpecifications.d.ts +45 -45
  315. package/lib/esm/presentation-common/rules/ClassSpecifications.js +8 -8
  316. package/lib/esm/presentation-common/rules/RelatedInstanceSpecification.d.ts +31 -31
  317. package/lib/esm/presentation-common/rules/RelatedInstanceSpecification.js +8 -8
  318. package/lib/esm/presentation-common/rules/RelationshipDirection.d.ts +13 -13
  319. package/lib/esm/presentation-common/rules/RelationshipDirection.js +18 -18
  320. package/lib/esm/presentation-common/rules/RelationshipPathSpecification.d.ts +56 -56
  321. package/lib/esm/presentation-common/rules/RelationshipPathSpecification.d.ts.map +1 -1
  322. package/lib/esm/presentation-common/rules/RelationshipPathSpecification.js +8 -8
  323. package/lib/esm/presentation-common/rules/Rule.d.ts +76 -76
  324. package/lib/esm/presentation-common/rules/Rule.js +32 -32
  325. package/lib/esm/presentation-common/rules/Ruleset.d.ts +65 -65
  326. package/lib/esm/presentation-common/rules/Ruleset.js +8 -8
  327. package/lib/esm/presentation-common/rules/SchemasSpecification.d.ts +41 -41
  328. package/lib/esm/presentation-common/rules/SchemasSpecification.js +8 -8
  329. package/lib/esm/presentation-common/rules/Variables.d.ts +58 -58
  330. package/lib/esm/presentation-common/rules/Variables.js +22 -22
  331. package/lib/esm/presentation-common/rules/content/ContentInstancesOfSpecificClassesSpecification.d.ts +41 -41
  332. package/lib/esm/presentation-common/rules/content/ContentInstancesOfSpecificClassesSpecification.js +8 -8
  333. package/lib/esm/presentation-common/rules/content/ContentRelatedInstancesSpecification.d.ts +25 -25
  334. package/lib/esm/presentation-common/rules/content/ContentRelatedInstancesSpecification.js +8 -8
  335. package/lib/esm/presentation-common/rules/content/ContentRule.d.ts +30 -30
  336. package/lib/esm/presentation-common/rules/content/ContentRule.js +8 -8
  337. package/lib/esm/presentation-common/rules/content/ContentSpecification.d.ts +58 -58
  338. package/lib/esm/presentation-common/rules/content/ContentSpecification.js +17 -17
  339. package/lib/esm/presentation-common/rules/content/DefaultPropertyCategoryOverride.d.ts +19 -19
  340. package/lib/esm/presentation-common/rules/content/DefaultPropertyCategoryOverride.js +8 -8
  341. package/lib/esm/presentation-common/rules/content/PropertySpecification.d.ts +86 -86
  342. package/lib/esm/presentation-common/rules/content/PropertySpecification.js +8 -8
  343. package/lib/esm/presentation-common/rules/content/SelectedNodeInstancesSpecification.d.ts +28 -28
  344. package/lib/esm/presentation-common/rules/content/SelectedNodeInstancesSpecification.js +8 -8
  345. package/lib/esm/presentation-common/rules/content/modifiers/CalculatedPropertiesSpecification.d.ts +25 -25
  346. package/lib/esm/presentation-common/rules/content/modifiers/CalculatedPropertiesSpecification.js +8 -8
  347. package/lib/esm/presentation-common/rules/content/modifiers/ContentModifier.d.ts +57 -57
  348. package/lib/esm/presentation-common/rules/content/modifiers/ContentModifier.js +8 -8
  349. package/lib/esm/presentation-common/rules/content/modifiers/CustomRendererSpecification.d.ts +17 -17
  350. package/lib/esm/presentation-common/rules/content/modifiers/CustomRendererSpecification.js +8 -8
  351. package/lib/esm/presentation-common/rules/content/modifiers/PropertyCategorySpecification.d.ts +107 -107
  352. package/lib/esm/presentation-common/rules/content/modifiers/PropertyCategorySpecification.d.ts.map +1 -1
  353. package/lib/esm/presentation-common/rules/content/modifiers/PropertyCategorySpecification.js +8 -8
  354. package/lib/esm/presentation-common/rules/content/modifiers/PropertyEditorsSpecification.d.ts +108 -108
  355. package/lib/esm/presentation-common/rules/content/modifiers/PropertyEditorsSpecification.js +18 -18
  356. package/lib/esm/presentation-common/rules/content/modifiers/RelatedPropertiesSpecification.d.ts +96 -96
  357. package/lib/esm/presentation-common/rules/content/modifiers/RelatedPropertiesSpecification.js +40 -40
  358. package/lib/esm/presentation-common/rules/customization/CheckBoxRule.d.ts +44 -44
  359. package/lib/esm/presentation-common/rules/customization/CheckBoxRule.js +8 -8
  360. package/lib/esm/presentation-common/rules/customization/CustomizationRule.d.ts +36 -36
  361. package/lib/esm/presentation-common/rules/customization/CustomizationRule.js +8 -8
  362. package/lib/esm/presentation-common/rules/customization/ExtendedDataRule.d.ts +27 -27
  363. package/lib/esm/presentation-common/rules/customization/ExtendedDataRule.js +8 -8
  364. package/lib/esm/presentation-common/rules/customization/GroupingRule.d.ts +207 -207
  365. package/lib/esm/presentation-common/rules/customization/GroupingRule.js +48 -48
  366. package/lib/esm/presentation-common/rules/customization/ImageIdOverride.d.ts +29 -29
  367. package/lib/esm/presentation-common/rules/customization/ImageIdOverride.js +8 -8
  368. package/lib/esm/presentation-common/rules/customization/InstanceLabelOverride.d.ts +158 -158
  369. package/lib/esm/presentation-common/rules/customization/InstanceLabelOverride.d.ts.map +1 -1
  370. package/lib/esm/presentation-common/rules/customization/InstanceLabelOverride.js +22 -22
  371. package/lib/esm/presentation-common/rules/customization/LabelOverride.d.ts +40 -40
  372. package/lib/esm/presentation-common/rules/customization/LabelOverride.js +8 -8
  373. package/lib/esm/presentation-common/rules/customization/SortingRule.d.ts +58 -58
  374. package/lib/esm/presentation-common/rules/customization/SortingRule.d.ts.map +1 -1
  375. package/lib/esm/presentation-common/rules/customization/SortingRule.js +8 -8
  376. package/lib/esm/presentation-common/rules/customization/StyleOverride.d.ts +48 -48
  377. package/lib/esm/presentation-common/rules/customization/StyleOverride.js +8 -8
  378. package/lib/esm/presentation-common/rules/hierarchy/ChildNodeRule.d.ts +14 -14
  379. package/lib/esm/presentation-common/rules/hierarchy/ChildNodeRule.js +8 -8
  380. package/lib/esm/presentation-common/rules/hierarchy/ChildNodeSpecification.d.ts +98 -98
  381. package/lib/esm/presentation-common/rules/hierarchy/ChildNodeSpecification.d.ts.map +1 -1
  382. package/lib/esm/presentation-common/rules/hierarchy/ChildNodeSpecification.js +18 -18
  383. package/lib/esm/presentation-common/rules/hierarchy/CustomNodeSpecification.d.ts +31 -31
  384. package/lib/esm/presentation-common/rules/hierarchy/CustomNodeSpecification.js +8 -8
  385. package/lib/esm/presentation-common/rules/hierarchy/CustomQueryInstanceNodesSpecification.d.ts +79 -79
  386. package/lib/esm/presentation-common/rules/hierarchy/CustomQueryInstanceNodesSpecification.js +16 -16
  387. package/lib/esm/presentation-common/rules/hierarchy/InstanceNodesOfSpecificClassesSpecification.d.ts +39 -39
  388. package/lib/esm/presentation-common/rules/hierarchy/InstanceNodesOfSpecificClassesSpecification.js +8 -8
  389. package/lib/esm/presentation-common/rules/hierarchy/NavigationRule.d.ts +50 -50
  390. package/lib/esm/presentation-common/rules/hierarchy/NavigationRule.d.ts.map +1 -1
  391. package/lib/esm/presentation-common/rules/hierarchy/NavigationRule.js +8 -8
  392. package/lib/esm/presentation-common/rules/hierarchy/NodeArtifactsRule.d.ts +27 -27
  393. package/lib/esm/presentation-common/rules/hierarchy/NodeArtifactsRule.js +8 -8
  394. package/lib/esm/presentation-common/rules/hierarchy/RelatedInstanceNodesSpecification.d.ts +27 -27
  395. package/lib/esm/presentation-common/rules/hierarchy/RelatedInstanceNodesSpecification.js +8 -8
  396. package/lib/esm/presentation-common/rules/hierarchy/RootNodeRule.d.ts +16 -16
  397. package/lib/esm/presentation-common/rules/hierarchy/RootNodeRule.js +8 -8
  398. package/lib/esm/presentation-common/rules/hierarchy/SubCondition.d.ts +35 -35
  399. package/lib/esm/presentation-common/rules/hierarchy/SubCondition.js +8 -8
  400. package/lib/esm/presentation-common/selection/SelectionScope.d.ts +38 -38
  401. package/lib/esm/presentation-common/selection/SelectionScope.d.ts.map +1 -1
  402. package/lib/esm/presentation-common/selection/SelectionScope.js +8 -8
  403. package/lib/esm/presentation-common.d.ts +113 -112
  404. package/lib/esm/presentation-common.d.ts.map +1 -1
  405. package/lib/esm/presentation-common.js +117 -116
  406. package/lib/esm/presentation-common.js.map +1 -1
  407. package/lib/public/locales/en/Presentation.json +15 -0
  408. package/package.json +17 -15
  409. package/lib/cjs/assets/locales/en/BisCore.json +0 -18
  410. package/lib/cjs/assets/locales/en/ECPresentation.json +0 -9
  411. package/lib/cjs/assets/locales/en/RulesEngine.json +0 -6
  412. package/lib/cjs/assets/locales/en-PSEUDO/BisCore.json +0 -18
  413. package/lib/cjs/assets/locales/en-PSEUDO/ECPresentation.json +0 -9
  414. package/lib/cjs/assets/locales/en-PSEUDO/RulesEngine.json +0 -6
  415. package/lib/public/locales/en/BisCore.json +0 -18
  416. package/lib/public/locales/en/ECPresentation.json +0 -9
  417. package/lib/public/locales/en/RulesEngine.json +0 -6
@@ -1,329 +1,329 @@
1
- /** @packageDocumentation
2
- * @module Content
3
- */
4
- import { Id64String } from "@itwin/core-bentley";
5
- import { ClassInfo, ClassInfoJSON, CompressedClassInfoJSON, RelatedClassInfo, RelatedClassInfoJSON, RelatedClassInfoWithOptionalRelationship, RelatedClassInfoWithOptionalRelationshipJSON, RelationshipPath, RelationshipPathJSON } from "../EC";
6
- import { InstanceFilterDefinition } from "../InstanceFilterDefinition";
7
- import { CategoryDescription, CategoryDescriptionJSON } from "./Category";
8
- import { Field, FieldDescriptor, FieldJSON } from "./Fields";
9
- /**
10
- * Data structure that describes an ECClass in content [[Descriptor]].
11
- * @public
12
- */
13
- export interface SelectClassInfo {
14
- /** Information about the ECClass */
15
- selectClassInfo: ClassInfo;
16
- /** Is the class handled polymorphically */
17
- isSelectPolymorphic: boolean;
18
- /** Relationship path from input class to the select class. */
19
- pathFromInputToSelectClass?: RelatedClassInfoWithOptionalRelationship[];
20
- /** Relationship paths to [related property]($docs/presentation/content/Terminology#related-properties) classes */
21
- relatedPropertyPaths?: RelationshipPath[];
22
- /** Relationship paths to navigation property classes */
23
- navigationPropertyClasses?: RelatedClassInfo[];
24
- /** Relationship paths to [related instance]($docs/presentation/content/Terminology#related-instance) classes. */
25
- relatedInstancePaths?: RelationshipPath[];
26
- }
27
- /**
28
- * Serialized [[SelectClassInfo]] JSON representation
29
- * @public
30
- */
31
- export interface SelectClassInfoJSON<TClassInfoJSON = ClassInfoJSON> {
32
- selectClassInfo: TClassInfoJSON;
33
- isSelectPolymorphic: boolean;
34
- pathFromInputToSelectClass?: RelatedClassInfoWithOptionalRelationshipJSON<TClassInfoJSON>[];
35
- relatedPropertyPaths?: RelationshipPathJSON<TClassInfoJSON>[];
36
- navigationPropertyClasses?: RelatedClassInfoJSON<TClassInfoJSON>[];
37
- relatedInstancePaths?: RelationshipPathJSON<TClassInfoJSON>[];
38
- }
39
- /** @public */
40
- export declare namespace SelectClassInfo {
41
- /** Deserialize [[SelectClassInfo]] from compressed JSON */
42
- function fromCompressedJSON(json: SelectClassInfoJSON<string>, classesMap: {
43
- [id: string]: CompressedClassInfoJSON;
44
- }): SelectClassInfo;
45
- /** Serialize [[SelectClassInfo]] to compressed JSON */
46
- function toCompressedJSON(selectClass: SelectClassInfo, classesMap: {
47
- [id: string]: CompressedClassInfoJSON;
48
- }): SelectClassInfoJSON<string>;
49
- /**
50
- * Deserialize [[SelectClassInfo]] list from JSON
51
- * @param json JSON or JSON serialized to string to deserialize from
52
- * @returns Deserialized [[SelectClassInfo]] objects list
53
- *
54
- * @internal
55
- */
56
- function listFromCompressedJSON(json: SelectClassInfoJSON<Id64String>[], classesMap: {
57
- [id: string]: CompressedClassInfoJSON;
58
- }): SelectClassInfo[];
59
- }
60
- /**
61
- * Flags that control content format.
62
- * @public
63
- */
64
- export declare enum ContentFlags {
65
- /** Each content record only has [[InstanceKey]] and no data */
66
- KeysOnly = 1,
67
- /**
68
- * Each content record additionally has an image id
69
- * @deprecated in 3.x. Use [[ExtendedDataRule]] instead. See [extended data usage page]($docs/presentation/customization/ExtendedDataUsage.md) for more details.
70
- */
71
- ShowImages = 2,
72
- /** Each content record additionally has a display label */
73
- ShowLabels = 4,
74
- /** All content records are merged into a single record (see [Merging values]($docs/presentation/content/terminology#value-merging)) */
75
- MergeResults = 8,
76
- /** Content has only distinct values */
77
- DistinctValues = 16,
78
- /** Doesn't create property or calculated fields. Can be used in conjunction with [[ShowLabels]]. */
79
- NoFields = 32,
80
- /**
81
- * Set related input keys on [[Item]] objects when creating content. This helps identify which [[Item]] is associated to which
82
- * given input key at the cost of performance creating those items.
83
- */
84
- IncludeInputKeys = 256,
85
- /**
86
- * Produce content descriptor that is not intended for querying content. Allows the implementation to omit certain
87
- * operations to make obtaining content descriptor faster.
88
- * @internal
89
- */
90
- DescriptorOnly = 512
91
- }
92
- /**
93
- * Data sorting direction
94
- * @public
95
- */
96
- export declare enum SortDirection {
97
- Ascending = 0,
98
- Descending = 1
99
- }
100
- /**
101
- * Data structure that contains selection information. Used
102
- * for cases when requesting content after a selection change.
103
- *
104
- * @public
105
- */
106
- export interface SelectionInfo {
107
- /** Name of selection provider which cause the selection change */
108
- providerName: string;
109
- /** Level of selection that changed */
110
- level?: number;
111
- }
112
- /**
113
- * Serialized [[Descriptor]] JSON representation.
114
- * @public
115
- */
116
- export interface DescriptorJSON {
117
- classesMap: {
118
- [id: string]: CompressedClassInfoJSON;
119
- };
120
- connectionId: string;
121
- inputKeysHash: string;
122
- /** @deprecated in 3.x. The attribute is not used anymore. */
123
- contentOptions: any;
124
- selectionInfo?: SelectionInfo;
125
- displayType: string;
126
- selectClasses: SelectClassInfoJSON<Id64String>[];
127
- categories: CategoryDescriptionJSON[];
128
- fields: FieldJSON<Id64String>[];
129
- sortingFieldName?: string;
130
- sortDirection?: SortDirection;
131
- contentFlags: number;
132
- /** @deprecated in 3.x. The attribute was replaced with [[fieldsFilterExpression]]. */
133
- filterExpression?: string;
134
- fieldsFilterExpression?: string;
135
- /** @beta */
136
- instanceFilter?: InstanceFilterDefinition;
137
- }
138
- /**
139
- * Descriptor overrides that can be used to customize content
140
- * @public
141
- */
142
- export interface DescriptorOverrides {
143
- /**
144
- * Content display type. Can be accessed in presentation rules and used
145
- * to modify content in various ways. Defaults to empty string.
146
- */
147
- displayType?: string;
148
- /** Content flags used for content customization. See [[ContentFlags]] */
149
- contentFlags?: number;
150
- /** Fields selector that allows excluding or including only specified fields. */
151
- fieldsSelector?: {
152
- /** Should the specified fields be included or excluded */
153
- type: "include" | "exclude";
154
- /** A list of field descriptors that identify fields to include / exclude */
155
- fields: FieldDescriptor[];
156
- };
157
- /** Specification for sorting data. */
158
- sorting?: {
159
- /** Identifier of the field to use for sorting */
160
- field: FieldDescriptor;
161
- /** Sort direction */
162
- direction: SortDirection;
163
- };
164
- /**
165
- * [ECExpression]($docs/presentation/advanced/ECExpressions.md) for filtering content
166
- * @deprecated in 3.x. The attribute was replaced with [[fieldsFilterExpression]].
167
- */
168
- filterExpression?: string;
169
- /**
170
- * [ECExpression]($docs/presentation/advanced/ECExpressions.md) for filtering content by
171
- * select fields.
172
- *
173
- * This is different from [[instanceFilter]] as filtering is applied on the union of all selects,
174
- * which removes access to content instance property values. Instead of referencing properties
175
- * through `this.PropertyName` alias, the expression should reference them by field names. In cases
176
- * when properties field merges multiple properties, this allows applying the filter on all of them
177
- * at once. This is useful for filtering table rows by column value, when content is displayed in
178
- * table format.
179
- */
180
- fieldsFilterExpression?: string;
181
- /**
182
- * Instances filter that allows filtering content by class, properties of specific class
183
- * or properties of instances related to the content instance.
184
- *
185
- * This is different from [[fieldsFilterExpression]] as filter is applied at a lower level - on
186
- * specific select class rather than a union of multiple select classes. This means the filter has
187
- * access to properties of that class and they can be referenced using symbols like `this.Property`.
188
- * This is useful for filtering instances of specific class.
189
- *
190
- * @beta
191
- */
192
- instanceFilter?: InstanceFilterDefinition;
193
- }
194
- /**
195
- * Descriptor properties
196
- * @public
197
- */
198
- export interface DescriptorSource {
199
- /** Id of the connection used to create the descriptor */
200
- readonly connectionId?: string;
201
- /** Hash of the input keys used to create the descriptor */
202
- readonly inputKeysHash?: string;
203
- /** Selection info used to create the descriptor */
204
- readonly selectionInfo?: SelectionInfo;
205
- /** Display type used to create the descriptor */
206
- readonly displayType: string;
207
- /** A list of classes that will be selected from when creating content with this descriptor */
208
- readonly selectClasses: SelectClassInfo[];
209
- /** A list of content field categories used in this descriptor */
210
- readonly categories: CategoryDescription[];
211
- /** A list of fields contained in the descriptor */
212
- readonly fields: Field[];
213
- /** [[ContentFlags]] used to create the descriptor */
214
- readonly contentFlags: number;
215
- /** Field used to sort the content */
216
- readonly sortingField?: Field;
217
- /** Sorting direction */
218
- readonly sortDirection?: SortDirection;
219
- /**
220
- * [ECExpression]($docs/presentation/advanced/ECExpressions.md) for filtering content
221
- * @deprecated in 3.x. The attribute was replaced with [[fieldsFilterExpression]].
222
- */
223
- filterExpression?: string;
224
- /**
225
- * [ECExpression]($docs/presentation/advanced/ECExpressions.md) for filtering content by
226
- * select fields.
227
- *
228
- * This is different from [[instanceFilter]] as filtering is applied on the union of all selects,
229
- * which removes access to content instance property values. Instead of referencing properties
230
- * through `this.PropertyName` alias, the expression should reference them by field names. In cases
231
- * when properties field merges multiple properties, this allows applying the filter on all of them
232
- * at once. This is useful for filtering table rows by column value, when content is displayed in
233
- * table format.
234
- */
235
- fieldsFilterExpression?: string;
236
- /**
237
- * Instances filter that allows filtering content by class, properties of specific class
238
- * or properties of instances related to the content instance.
239
- *
240
- * This is different from [[fieldsFilterExpression]] as filter is applied at a lower level - on
241
- * specific select class rather than a union of multiple select classes. This means the filter has
242
- * access to properties of that class and they can be referenced using symbols like `this.Property`.
243
- * This is useful for filtering instances of specific class.
244
- *
245
- * @beta
246
- */
247
- instanceFilter?: InstanceFilterDefinition;
248
- }
249
- /**
250
- * Data structure that describes content: fields, sorting, filtering, format, etc.
251
- * Descriptor may be changed to control how content is created.
252
- *
253
- * @public
254
- */
255
- export declare class Descriptor implements DescriptorSource {
256
- /** Id of the connection used to create the descriptor */
257
- readonly connectionId?: string;
258
- /** Hash of the input keys used to create the descriptor */
259
- readonly inputKeysHash?: string;
260
- /**
261
- * Extended options used to create the descriptor.
262
- * @deprecated since 3.6. The attribute is not used anymore.
263
- */
264
- readonly contentOptions: any;
265
- /** Selection info used to create the descriptor */
266
- readonly selectionInfo?: SelectionInfo;
267
- /** Display type used to create the descriptor */
268
- readonly displayType: string;
269
- /** A list of classes that will be selected when creating content with this descriptor */
270
- readonly selectClasses: SelectClassInfo[];
271
- /** A list of content field categories used in this descriptor */
272
- readonly categories: CategoryDescription[];
273
- /** A list of fields contained in the descriptor */
274
- readonly fields: Field[];
275
- /** [[ContentFlags]] used to create the descriptor */
276
- readonly contentFlags: number;
277
- /** Field used to sort the content */
278
- sortingField?: Field;
279
- /** Sorting direction */
280
- sortDirection?: SortDirection;
281
- /**
282
- * [ECExpression]($docs/presentation/advanced/ECExpressions.md) for filtering content
283
- * @deprecated in 3.x. The attribute was replaced with [[fieldsFilterExpression]].
284
- */
285
- filterExpression?: string;
286
- /**
287
- * [ECExpression]($docs/presentation/advanced/ECExpressions.md) for filtering content by
288
- * select fields.
289
- *
290
- * This is different from [[instanceFilter]] as filtering is applied on the union of all selects,
291
- * which removes access to content instance property values. Instead of referencing properties
292
- * through `this.PropertyName` alias, the expression should reference them by field names. In cases
293
- * when properties field merges multiple properties, this allows applying the filter on all of them
294
- * at once. This is useful for filtering table rows by column value, when content is displayed in
295
- * table format.
296
- */
297
- fieldsFilterExpression?: string;
298
- /**
299
- * Instances filter that allows filtering content by class, properties of specific class
300
- * or properties of instances related to the content instance.
301
- *
302
- * This is different from [[fieldsFilterExpression]] as filter is applied at a lower level - on
303
- * specific select class rather than a union of multiple select classes. This means the filter has
304
- * access to properties of that class and they can be referenced using symbols like `this.Property`.
305
- * This is useful for filtering instances of specific class.
306
- *
307
- * @beta
308
- */
309
- instanceFilter?: InstanceFilterDefinition;
310
- /** Construct a new Descriptor using a [[DescriptorSource]] */
311
- constructor(source: DescriptorSource);
312
- /** Serialize [[Descriptor]] to JSON */
313
- toJSON(): DescriptorJSON;
314
- /** Deserialize [[Descriptor]] from JSON */
315
- static fromJSON(json: DescriptorJSON | undefined): Descriptor | undefined;
316
- private static getFieldsFromJSON;
317
- /**
318
- * Get field by its name
319
- * @param name Name of the field to find
320
- * @param recurse Recurse into nested fields
321
- */
322
- getFieldByName(name: string, recurse?: boolean): Field | undefined;
323
- /**
324
- * Create descriptor overrides object from this descriptor.
325
- * @public
326
- */
327
- createDescriptorOverrides(): DescriptorOverrides;
328
- }
1
+ /** @packageDocumentation
2
+ * @module Content
3
+ */
4
+ import { Id64String } from "@itwin/core-bentley";
5
+ import { ClassInfo, ClassInfoJSON, CompressedClassInfoJSON, RelatedClassInfo, RelatedClassInfoJSON, RelatedClassInfoWithOptionalRelationship, RelatedClassInfoWithOptionalRelationshipJSON, RelationshipPath, RelationshipPathJSON } from "../EC";
6
+ import { InstanceFilterDefinition } from "../InstanceFilterDefinition";
7
+ import { CategoryDescription, CategoryDescriptionJSON } from "./Category";
8
+ import { Field, FieldDescriptor, FieldJSON } from "./Fields";
9
+ /**
10
+ * Data structure that describes an ECClass in content [[Descriptor]].
11
+ * @public
12
+ */
13
+ export interface SelectClassInfo {
14
+ /** Information about the ECClass */
15
+ selectClassInfo: ClassInfo;
16
+ /** Is the class handled polymorphically */
17
+ isSelectPolymorphic: boolean;
18
+ /** Relationship path from input class to the select class. */
19
+ pathFromInputToSelectClass?: RelatedClassInfoWithOptionalRelationship[];
20
+ /** Relationship paths to [related property]($docs/presentation/content/Terminology#related-properties) classes */
21
+ relatedPropertyPaths?: RelationshipPath[];
22
+ /** Relationship paths to navigation property classes */
23
+ navigationPropertyClasses?: RelatedClassInfo[];
24
+ /** Relationship paths to [related instance]($docs/presentation/content/Terminology#related-instance) classes. */
25
+ relatedInstancePaths?: RelationshipPath[];
26
+ }
27
+ /**
28
+ * Serialized [[SelectClassInfo]] JSON representation
29
+ * @public
30
+ */
31
+ export interface SelectClassInfoJSON<TClassInfoJSON = ClassInfoJSON> {
32
+ selectClassInfo: TClassInfoJSON;
33
+ isSelectPolymorphic: boolean;
34
+ pathFromInputToSelectClass?: RelatedClassInfoWithOptionalRelationshipJSON<TClassInfoJSON>[];
35
+ relatedPropertyPaths?: RelationshipPathJSON<TClassInfoJSON>[];
36
+ navigationPropertyClasses?: RelatedClassInfoJSON<TClassInfoJSON>[];
37
+ relatedInstancePaths?: RelationshipPathJSON<TClassInfoJSON>[];
38
+ }
39
+ /** @public */
40
+ export declare namespace SelectClassInfo {
41
+ /** Deserialize [[SelectClassInfo]] from compressed JSON */
42
+ function fromCompressedJSON(json: SelectClassInfoJSON<string>, classesMap: {
43
+ [id: string]: CompressedClassInfoJSON;
44
+ }): SelectClassInfo;
45
+ /** Serialize [[SelectClassInfo]] to compressed JSON */
46
+ function toCompressedJSON(selectClass: SelectClassInfo, classesMap: {
47
+ [id: string]: CompressedClassInfoJSON;
48
+ }): SelectClassInfoJSON<string>;
49
+ /**
50
+ * Deserialize [[SelectClassInfo]] list from JSON
51
+ * @param json JSON or JSON serialized to string to deserialize from
52
+ * @returns Deserialized [[SelectClassInfo]] objects list
53
+ *
54
+ * @internal
55
+ */
56
+ function listFromCompressedJSON(json: SelectClassInfoJSON<Id64String>[], classesMap: {
57
+ [id: string]: CompressedClassInfoJSON;
58
+ }): SelectClassInfo[];
59
+ }
60
+ /**
61
+ * Flags that control content format.
62
+ * @public
63
+ */
64
+ export declare enum ContentFlags {
65
+ /** Each content record only has [[InstanceKey]] and no data */
66
+ KeysOnly = 1,
67
+ /**
68
+ * Each content record additionally has an image id
69
+ * @deprecated in 3.x. Use [[ExtendedDataRule]] instead. See [extended data usage page]($docs/presentation/customization/ExtendedDataUsage.md) for more details.
70
+ */
71
+ ShowImages = 2,
72
+ /** Each content record additionally has a display label */
73
+ ShowLabels = 4,
74
+ /** All content records are merged into a single record (see [Merging values]($docs/presentation/content/terminology#value-merging)) */
75
+ MergeResults = 8,
76
+ /** Content has only distinct values */
77
+ DistinctValues = 16,
78
+ /** Doesn't create property or calculated fields. Can be used in conjunction with [[ShowLabels]]. */
79
+ NoFields = 32,
80
+ /**
81
+ * Set related input keys on [[Item]] objects when creating content. This helps identify which [[Item]] is associated to which
82
+ * given input key at the cost of performance creating those items.
83
+ */
84
+ IncludeInputKeys = 256,
85
+ /**
86
+ * Produce content descriptor that is not intended for querying content. Allows the implementation to omit certain
87
+ * operations to make obtaining content descriptor faster.
88
+ * @internal
89
+ */
90
+ DescriptorOnly = 512
91
+ }
92
+ /**
93
+ * Data sorting direction
94
+ * @public
95
+ */
96
+ export declare enum SortDirection {
97
+ Ascending = 0,
98
+ Descending = 1
99
+ }
100
+ /**
101
+ * Data structure that contains selection information. Used
102
+ * for cases when requesting content after a selection change.
103
+ *
104
+ * @public
105
+ */
106
+ export interface SelectionInfo {
107
+ /** Name of selection provider which cause the selection change */
108
+ providerName: string;
109
+ /** Level of selection that changed */
110
+ level?: number;
111
+ }
112
+ /**
113
+ * Serialized [[Descriptor]] JSON representation.
114
+ * @public
115
+ */
116
+ export interface DescriptorJSON {
117
+ classesMap: {
118
+ [id: string]: CompressedClassInfoJSON;
119
+ };
120
+ connectionId: string;
121
+ inputKeysHash: string;
122
+ /** @deprecated in 3.x. The attribute is not used anymore. */
123
+ contentOptions: any;
124
+ selectionInfo?: SelectionInfo;
125
+ displayType: string;
126
+ selectClasses: SelectClassInfoJSON<Id64String>[];
127
+ categories: CategoryDescriptionJSON[];
128
+ fields: FieldJSON<Id64String>[];
129
+ sortingFieldName?: string;
130
+ sortDirection?: SortDirection;
131
+ contentFlags: number;
132
+ /** @deprecated in 3.x. The attribute was replaced with [[fieldsFilterExpression]]. */
133
+ filterExpression?: string;
134
+ fieldsFilterExpression?: string;
135
+ /** @beta */
136
+ instanceFilter?: InstanceFilterDefinition;
137
+ }
138
+ /**
139
+ * Descriptor overrides that can be used to customize content
140
+ * @public
141
+ */
142
+ export interface DescriptorOverrides {
143
+ /**
144
+ * Content display type. Can be accessed in presentation rules and used
145
+ * to modify content in various ways. Defaults to empty string.
146
+ */
147
+ displayType?: string;
148
+ /** Content flags used for content customization. See [[ContentFlags]] */
149
+ contentFlags?: number;
150
+ /** Fields selector that allows excluding or including only specified fields. */
151
+ fieldsSelector?: {
152
+ /** Should the specified fields be included or excluded */
153
+ type: "include" | "exclude";
154
+ /** A list of field descriptors that identify fields to include / exclude */
155
+ fields: FieldDescriptor[];
156
+ };
157
+ /** Specification for sorting data. */
158
+ sorting?: {
159
+ /** Identifier of the field to use for sorting */
160
+ field: FieldDescriptor;
161
+ /** Sort direction */
162
+ direction: SortDirection;
163
+ };
164
+ /**
165
+ * [ECExpression]($docs/presentation/advanced/ECExpressions.md) for filtering content
166
+ * @deprecated in 3.x. The attribute was replaced with [[fieldsFilterExpression]].
167
+ */
168
+ filterExpression?: string;
169
+ /**
170
+ * [ECExpression]($docs/presentation/advanced/ECExpressions.md) for filtering content by
171
+ * select fields.
172
+ *
173
+ * This is different from [[instanceFilter]] as filtering is applied on the union of all selects,
174
+ * which removes access to content instance property values. Instead of referencing properties
175
+ * through `this.PropertyName` alias, the expression should reference them by field names. In cases
176
+ * when properties field merges multiple properties, this allows applying the filter on all of them
177
+ * at once. This is useful for filtering table rows by column value, when content is displayed in
178
+ * table format.
179
+ */
180
+ fieldsFilterExpression?: string;
181
+ /**
182
+ * Instances filter that allows filtering content by class, properties of specific class
183
+ * or properties of instances related to the content instance.
184
+ *
185
+ * This is different from [[fieldsFilterExpression]] as filter is applied at a lower level - on
186
+ * specific select class rather than a union of multiple select classes. This means the filter has
187
+ * access to properties of that class and they can be referenced using symbols like `this.Property`.
188
+ * This is useful for filtering instances of specific class.
189
+ *
190
+ * @beta
191
+ */
192
+ instanceFilter?: InstanceFilterDefinition;
193
+ }
194
+ /**
195
+ * Descriptor properties
196
+ * @public
197
+ */
198
+ export interface DescriptorSource {
199
+ /** Id of the connection used to create the descriptor */
200
+ readonly connectionId?: string;
201
+ /** Hash of the input keys used to create the descriptor */
202
+ readonly inputKeysHash?: string;
203
+ /** Selection info used to create the descriptor */
204
+ readonly selectionInfo?: SelectionInfo;
205
+ /** Display type used to create the descriptor */
206
+ readonly displayType: string;
207
+ /** A list of classes that will be selected from when creating content with this descriptor */
208
+ readonly selectClasses: SelectClassInfo[];
209
+ /** A list of content field categories used in this descriptor */
210
+ readonly categories: CategoryDescription[];
211
+ /** A list of fields contained in the descriptor */
212
+ readonly fields: Field[];
213
+ /** [[ContentFlags]] used to create the descriptor */
214
+ readonly contentFlags: number;
215
+ /** Field used to sort the content */
216
+ readonly sortingField?: Field;
217
+ /** Sorting direction */
218
+ readonly sortDirection?: SortDirection;
219
+ /**
220
+ * [ECExpression]($docs/presentation/advanced/ECExpressions.md) for filtering content
221
+ * @deprecated in 3.x. The attribute was replaced with [[fieldsFilterExpression]].
222
+ */
223
+ filterExpression?: string;
224
+ /**
225
+ * [ECExpression]($docs/presentation/advanced/ECExpressions.md) for filtering content by
226
+ * select fields.
227
+ *
228
+ * This is different from [[instanceFilter]] as filtering is applied on the union of all selects,
229
+ * which removes access to content instance property values. Instead of referencing properties
230
+ * through `this.PropertyName` alias, the expression should reference them by field names. In cases
231
+ * when properties field merges multiple properties, this allows applying the filter on all of them
232
+ * at once. This is useful for filtering table rows by column value, when content is displayed in
233
+ * table format.
234
+ */
235
+ fieldsFilterExpression?: string;
236
+ /**
237
+ * Instances filter that allows filtering content by class, properties of specific class
238
+ * or properties of instances related to the content instance.
239
+ *
240
+ * This is different from [[fieldsFilterExpression]] as filter is applied at a lower level - on
241
+ * specific select class rather than a union of multiple select classes. This means the filter has
242
+ * access to properties of that class and they can be referenced using symbols like `this.Property`.
243
+ * This is useful for filtering instances of specific class.
244
+ *
245
+ * @beta
246
+ */
247
+ instanceFilter?: InstanceFilterDefinition;
248
+ }
249
+ /**
250
+ * Data structure that describes content: fields, sorting, filtering, format, etc.
251
+ * Descriptor may be changed to control how content is created.
252
+ *
253
+ * @public
254
+ */
255
+ export declare class Descriptor implements DescriptorSource {
256
+ /** Id of the connection used to create the descriptor */
257
+ readonly connectionId?: string;
258
+ /** Hash of the input keys used to create the descriptor */
259
+ readonly inputKeysHash?: string;
260
+ /**
261
+ * Extended options used to create the descriptor.
262
+ * @deprecated in 3.6. The attribute is not used anymore.
263
+ */
264
+ readonly contentOptions: any;
265
+ /** Selection info used to create the descriptor */
266
+ readonly selectionInfo?: SelectionInfo;
267
+ /** Display type used to create the descriptor */
268
+ readonly displayType: string;
269
+ /** A list of classes that will be selected when creating content with this descriptor */
270
+ readonly selectClasses: SelectClassInfo[];
271
+ /** A list of content field categories used in this descriptor */
272
+ readonly categories: CategoryDescription[];
273
+ /** A list of fields contained in the descriptor */
274
+ readonly fields: Field[];
275
+ /** [[ContentFlags]] used to create the descriptor */
276
+ readonly contentFlags: number;
277
+ /** Field used to sort the content */
278
+ sortingField?: Field;
279
+ /** Sorting direction */
280
+ sortDirection?: SortDirection;
281
+ /**
282
+ * [ECExpression]($docs/presentation/advanced/ECExpressions.md) for filtering content
283
+ * @deprecated in 3.x. The attribute was replaced with [[fieldsFilterExpression]].
284
+ */
285
+ filterExpression?: string;
286
+ /**
287
+ * [ECExpression]($docs/presentation/advanced/ECExpressions.md) for filtering content by
288
+ * select fields.
289
+ *
290
+ * This is different from [[instanceFilter]] as filtering is applied on the union of all selects,
291
+ * which removes access to content instance property values. Instead of referencing properties
292
+ * through `this.PropertyName` alias, the expression should reference them by field names. In cases
293
+ * when properties field merges multiple properties, this allows applying the filter on all of them
294
+ * at once. This is useful for filtering table rows by column value, when content is displayed in
295
+ * table format.
296
+ */
297
+ fieldsFilterExpression?: string;
298
+ /**
299
+ * Instances filter that allows filtering content by class, properties of specific class
300
+ * or properties of instances related to the content instance.
301
+ *
302
+ * This is different from [[fieldsFilterExpression]] as filter is applied at a lower level - on
303
+ * specific select class rather than a union of multiple select classes. This means the filter has
304
+ * access to properties of that class and they can be referenced using symbols like `this.Property`.
305
+ * This is useful for filtering instances of specific class.
306
+ *
307
+ * @beta
308
+ */
309
+ instanceFilter?: InstanceFilterDefinition;
310
+ /** Construct a new Descriptor using a [[DescriptorSource]] */
311
+ constructor(source: DescriptorSource);
312
+ /** Serialize [[Descriptor]] to JSON */
313
+ toJSON(): DescriptorJSON;
314
+ /** Deserialize [[Descriptor]] from JSON */
315
+ static fromJSON(json: DescriptorJSON | undefined): Descriptor | undefined;
316
+ private static getFieldsFromJSON;
317
+ /**
318
+ * Get field by its name
319
+ * @param name Name of the field to find
320
+ * @param recurse Recurse into nested fields
321
+ */
322
+ getFieldByName(name: string, recurse?: boolean): Field | undefined;
323
+ /**
324
+ * Create descriptor overrides object from this descriptor.
325
+ * @public
326
+ */
327
+ createDescriptorOverrides(): DescriptorOverrides;
328
+ }
329
329
  //# sourceMappingURL=Descriptor.d.ts.map