@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,58 +1,58 @@
1
- /** @packageDocumentation
2
- * @module Content
3
- */
4
- import { ClassInfoJSON, CompressedClassInfoJSON, PropertyInfo, PropertyInfoJSON } from "../EC";
5
- /**
6
- * Data structure that describes one step of property
7
- * accessor path.
8
- *
9
- * @public
10
- */
11
- export interface PropertyAccessor {
12
- /** Name of ECProperty */
13
- propertyName: string;
14
- /** If the property is an array, array index. Otherwise undefined. */
15
- arrayIndex?: number;
16
- }
17
- /**
18
- * Describes path to a property.
19
- * @public
20
- */
21
- export declare type PropertyAccessorPath = PropertyAccessor[];
22
- /**
23
- * Data structure that describes a single ECProperty that's
24
- * included in a [[PropertiesField]].
25
- *
26
- * TODO: Remove?
27
- *
28
- * @public
29
- */
30
- export interface Property {
31
- /** ECProperty information */
32
- property: PropertyInfo;
33
- }
34
- /** @public */
35
- export declare namespace Property {
36
- /**
37
- * Serialize [[Property]] to JSON
38
- * @deprecated in 3.x. Use [[toCompressedJSON]]
39
- */
40
- function toJSON(prop: Property): PropertyJSON;
41
- /** Serialize [[Property]] to compressed JSON */
42
- function toCompressedJSON(prop: Property, classesMap: {
43
- [id: string]: CompressedClassInfoJSON;
44
- }): PropertyJSON<string>;
45
- /**
46
- * Deserializes [[Property]] from JSON
47
- * @deprecated in 3.x. Use [[Property]]
48
- */
49
- function fromJSON(json: PropertyJSON): Property;
50
- }
51
- /**
52
- * JSON representation of [[Property]]
53
- * @public
54
- */
55
- export interface PropertyJSON<TClassInfoJSON = ClassInfoJSON> {
56
- property: PropertyInfoJSON<TClassInfoJSON>;
57
- }
1
+ /** @packageDocumentation
2
+ * @module Content
3
+ */
4
+ import { ClassInfoJSON, CompressedClassInfoJSON, PropertyInfo, PropertyInfoJSON } from "../EC";
5
+ /**
6
+ * Data structure that describes one step of property
7
+ * accessor path.
8
+ *
9
+ * @public
10
+ */
11
+ export interface PropertyAccessor {
12
+ /** Name of ECProperty */
13
+ propertyName: string;
14
+ /** If the property is an array, array index. Otherwise undefined. */
15
+ arrayIndex?: number;
16
+ }
17
+ /**
18
+ * Describes path to a property.
19
+ * @public
20
+ */
21
+ export type PropertyAccessorPath = PropertyAccessor[];
22
+ /**
23
+ * Data structure that describes a single ECProperty that's
24
+ * included in a [[PropertiesField]].
25
+ *
26
+ * TODO: Remove?
27
+ *
28
+ * @public
29
+ */
30
+ export interface Property {
31
+ /** ECProperty information */
32
+ property: PropertyInfo;
33
+ }
34
+ /** @public */
35
+ export declare namespace Property {
36
+ /**
37
+ * Serialize [[Property]] to JSON
38
+ * @deprecated in 3.x. Use [[toCompressedJSON]]
39
+ */
40
+ function toJSON(prop: Property): PropertyJSON;
41
+ /** Serialize [[Property]] to compressed JSON */
42
+ function toCompressedJSON(prop: Property, classesMap: {
43
+ [id: string]: CompressedClassInfoJSON;
44
+ }): PropertyJSON<string>;
45
+ /**
46
+ * Deserializes [[Property]] from JSON
47
+ * @deprecated in 3.x. Use [[Property]]
48
+ */
49
+ function fromJSON(json: PropertyJSON): Property;
50
+ }
51
+ /**
52
+ * JSON representation of [[Property]]
53
+ * @public
54
+ */
55
+ export interface PropertyJSON<TClassInfoJSON = ClassInfoJSON> {
56
+ property: PropertyInfoJSON<TClassInfoJSON>;
57
+ }
58
58
  //# sourceMappingURL=Property.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Property.d.ts","sourceRoot":"","sources":["../../../../src/presentation-common/content/Property.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAE,aAAa,EAAE,uBAAuB,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,OAAO,CAAC;AAE/F;;;;;GAKG;AACH,MAAM,WAAW,gBAAgB;IAC/B,yBAAyB;IACzB,YAAY,EAAE,MAAM,CAAC;IACrB,qEAAqE;IACrE,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;;GAGG;AACH,oBAAY,oBAAoB,GAAG,gBAAgB,EAAE,CAAC;AAEtD;;;;;;;GAOG;AACH,MAAM,WAAW,QAAQ;IACvB,6BAA6B;IAC7B,QAAQ,EAAE,YAAY,CAAC;CACxB;AAED,cAAc;AACd,yBAAiB,QAAQ,CAAC;IACxB;;;MAGE;IAEF,SAAgB,MAAM,CAAC,IAAI,EAAE,QAAQ,GAAG,YAAY,CAEnD;IAED,gDAAgD;IAChD,SAAgB,gBAAgB,CAAC,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE;QAAE,CAAC,EAAE,EAAE,MAAM,GAAG,uBAAuB,CAAA;KAAE,GAAG,YAAY,CAAC,MAAM,CAAC,CAI5H;IAED;;;OAGG;IAEH,SAAgB,QAAQ,CAAC,IAAI,EAAE,YAAY,GAAG,QAAQ,CAErD;CACF;AAED;;;GAGG;AAEH,MAAM,WAAW,YAAY,CAAC,cAAc,GAAG,aAAa;IAC1D,QAAQ,EAAE,gBAAgB,CAAC,cAAc,CAAC,CAAC;CAC5C"}
1
+ {"version":3,"file":"Property.d.ts","sourceRoot":"","sources":["../../../../src/presentation-common/content/Property.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAE,aAAa,EAAE,uBAAuB,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,OAAO,CAAC;AAE/F;;;;;GAKG;AACH,MAAM,WAAW,gBAAgB;IAC/B,yBAAyB;IACzB,YAAY,EAAE,MAAM,CAAC;IACrB,qEAAqE;IACrE,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;;GAGG;AACH,MAAM,MAAM,oBAAoB,GAAG,gBAAgB,EAAE,CAAC;AAEtD;;;;;;;GAOG;AACH,MAAM,WAAW,QAAQ;IACvB,6BAA6B;IAC7B,QAAQ,EAAE,YAAY,CAAC;CACxB;AAED,cAAc;AACd,yBAAiB,QAAQ,CAAC;IACxB;;;MAGE;IAEF,SAAgB,MAAM,CAAC,IAAI,EAAE,QAAQ,GAAG,YAAY,CAEnD;IAED,gDAAgD;IAChD,SAAgB,gBAAgB,CAAC,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE;QAAE,CAAC,EAAE,EAAE,MAAM,GAAG,uBAAuB,CAAA;KAAE,GAAG,YAAY,CAAC,MAAM,CAAC,CAI5H;IAED;;;OAGG;IAEH,SAAgB,QAAQ,CAAC,IAAI,EAAE,YAAY,GAAG,QAAQ,CAErD;CACF;AAED;;;GAGG;AAEH,MAAM,WAAW,YAAY,CAAC,cAAc,GAAG,aAAa;IAC1D,QAAQ,EAAE,gBAAgB,CAAC,cAAc,CAAC,CAAC;CAC5C"}
@@ -1,38 +1,38 @@
1
- /*---------------------------------------------------------------------------------------------
2
- * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
3
- * See LICENSE.md in the project root for license terms and full copyright notice.
4
- *--------------------------------------------------------------------------------------------*/
5
- /** @packageDocumentation
6
- * @module Content
7
- */
8
- import { PropertyInfo } from "../EC";
9
- /** @public */
10
- export var Property;
11
- (function (Property) {
12
- /**
13
- * Serialize [[Property]] to JSON
14
- * @deprecated in 3.x. Use [[toCompressedJSON]]
15
- */
16
- // istanbul ignore next
17
- function toJSON(prop) {
18
- return { ...prop };
19
- }
20
- Property.toJSON = toJSON;
21
- /** Serialize [[Property]] to compressed JSON */
22
- function toCompressedJSON(prop, classesMap) {
23
- return {
24
- property: PropertyInfo.toCompressedJSON(prop.property, classesMap),
25
- };
26
- }
27
- Property.toCompressedJSON = toCompressedJSON;
28
- /**
29
- * Deserializes [[Property]] from JSON
30
- * @deprecated in 3.x. Use [[Property]]
31
- */
32
- // istanbul ignore next
33
- function fromJSON(json) {
34
- return { ...json };
35
- }
36
- Property.fromJSON = fromJSON;
37
- })(Property || (Property = {}));
1
+ /*---------------------------------------------------------------------------------------------
2
+ * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
3
+ * See LICENSE.md in the project root for license terms and full copyright notice.
4
+ *--------------------------------------------------------------------------------------------*/
5
+ /** @packageDocumentation
6
+ * @module Content
7
+ */
8
+ import { PropertyInfo } from "../EC";
9
+ /** @public */
10
+ export var Property;
11
+ (function (Property) {
12
+ /**
13
+ * Serialize [[Property]] to JSON
14
+ * @deprecated in 3.x. Use [[toCompressedJSON]]
15
+ */
16
+ // istanbul ignore next
17
+ function toJSON(prop) {
18
+ return { ...prop };
19
+ }
20
+ Property.toJSON = toJSON;
21
+ /** Serialize [[Property]] to compressed JSON */
22
+ function toCompressedJSON(prop, classesMap) {
23
+ return {
24
+ property: PropertyInfo.toCompressedJSON(prop.property, classesMap),
25
+ };
26
+ }
27
+ Property.toCompressedJSON = toCompressedJSON;
28
+ /**
29
+ * Deserializes [[Property]] from JSON
30
+ * @deprecated in 3.x. Use [[Property]]
31
+ */
32
+ // istanbul ignore next
33
+ function fromJSON(json) {
34
+ return { ...json };
35
+ }
36
+ Property.fromJSON = fromJSON;
37
+ })(Property || (Property = {}));
38
38
  //# sourceMappingURL=Property.js.map
@@ -0,0 +1,29 @@
1
+ /** @packageDocumentation
2
+ * @module Content
3
+ */
4
+ import { UnitSystemKey } from "@itwin/core-quantity";
5
+ import { KoqPropertyValueFormatter } from "../KoqPropertyValueFormatter";
6
+ import { Content } from "./Content";
7
+ import { Field } from "./Fields";
8
+ import { ArrayTypeDescription, PrimitiveTypeDescription, StructTypeDescription, TypeDescription } from "./TypeDescription";
9
+ import { DisplayValue, DisplayValuesMap, Value } from "./Value";
10
+ /** @alpha */
11
+ export declare class ContentFormatter {
12
+ private _propertyValueFormatter;
13
+ private _unitSystem?;
14
+ constructor(_propertyValueFormatter: ContentPropertyValueFormatter, _unitSystem?: UnitSystemKey | undefined);
15
+ formatContent(content: Content): Promise<Content>;
16
+ private formatValues;
17
+ private formatNestedContentDisplayValues;
18
+ }
19
+ /** @alpha */
20
+ export declare class ContentPropertyValueFormatter {
21
+ private _koqValueFormatter;
22
+ constructor(_koqValueFormatter: KoqPropertyValueFormatter);
23
+ formatPropertyValue(field: Field, value: Value, unitSystem?: UnitSystemKey): Promise<DisplayValue>;
24
+ formatValue(type: TypeDescription, value: Value): DisplayValue;
25
+ formatPrimitiveValue(type: PrimitiveTypeDescription, value: Value): string;
26
+ formatStructValue(type: StructTypeDescription, value: Value): DisplayValuesMap;
27
+ formatArrayValue(type: ArrayTypeDescription, value: Value): DisplayValue[];
28
+ }
29
+ //# sourceMappingURL=PropertyValueFormatter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PropertyValueFormatter.d.ts","sourceRoot":"","sources":["../../../../src/presentation-common/content/PropertyValueFormatter.ts"],"names":[],"mappings":"AAIA;;GAEG;AAGH,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAErD,OAAO,EAAE,yBAAyB,EAAE,MAAM,8BAA8B,CAAC;AAEzE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,KAAK,EAAmB,MAAM,UAAU,CAAC;AAClD,OAAO,EAAE,oBAAoB,EAAE,wBAAwB,EAAuB,qBAAqB,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAChJ,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAsB,KAAK,EAAE,MAAM,SAAS,CAAC;AAEpF,aAAa;AACb,qBAAa,gBAAgB;IACf,OAAO,CAAC,uBAAuB;IAAiC,OAAO,CAAC,WAAW,CAAC;gBAA5E,uBAAuB,EAAE,6BAA6B,EAAU,WAAW,CAAC,2BAAe;IAElG,aAAa,CAAC,OAAO,EAAE,OAAO;YAQ7B,YAAY;YAqBZ,gCAAgC;CAM/C;AAED,aAAa;AACb,qBAAa,6BAA6B;IAC5B,OAAO,CAAC,kBAAkB;gBAAlB,kBAAkB,EAAE,yBAAyB;IAEpD,mBAAmB,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,YAAY,CAAC;IAWxG,WAAW,CAAC,IAAI,EAAE,eAAe,EAAE,KAAK,EAAE,KAAK,GAAG,YAAY;IAW9D,oBAAoB,CAAC,IAAI,EAAE,wBAAwB,EAAE,KAAK,EAAE,KAAK;IAkCjE,iBAAiB,CAAC,IAAI,EAAE,qBAAqB,EAAE,KAAK,EAAE,KAAK;IAW3D,gBAAgB,CAAC,IAAI,EAAE,oBAAoB,EAAE,KAAK,EAAE,KAAK;CAMjE"}
@@ -0,0 +1,134 @@
1
+ /*---------------------------------------------------------------------------------------------
2
+ * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
3
+ * See LICENSE.md in the project root for license terms and full copyright notice.
4
+ *--------------------------------------------------------------------------------------------*/
5
+ /** @packageDocumentation
6
+ * @module Content
7
+ */
8
+ import { assert } from "@itwin/core-bentley";
9
+ import { PropertyValueFormat } from "./TypeDescription";
10
+ import { Value } from "./Value";
11
+ /** @alpha */
12
+ export class ContentFormatter {
13
+ constructor(_propertyValueFormatter, _unitSystem) {
14
+ this._propertyValueFormatter = _propertyValueFormatter;
15
+ this._unitSystem = _unitSystem;
16
+ }
17
+ async formatContent(content) {
18
+ const descriptor = content.descriptor;
19
+ for (const item of content.contentSet) {
20
+ await this.formatValues(item.values, item.displayValues, descriptor.fields, item.mergedFieldNames);
21
+ }
22
+ return content;
23
+ }
24
+ async formatValues(values, displayValues, fields, mergedFields) {
25
+ for (const field of fields) {
26
+ const value = values[field.name];
27
+ // format display value of merged values
28
+ if (mergedFields.includes(field.name)) {
29
+ displayValues[field.name] = "@Presentation:label.varies@";
30
+ continue;
31
+ }
32
+ // format display values of nested content field
33
+ if (field.isNestedContentField()) {
34
+ assert(Value.isNestedContent(value));
35
+ await this.formatNestedContentDisplayValues(value, field.nestedFields);
36
+ continue;
37
+ }
38
+ displayValues[field.name] = await this._propertyValueFormatter.formatPropertyValue(field, value, this._unitSystem);
39
+ }
40
+ }
41
+ async formatNestedContentDisplayValues(nestedValues, fields) {
42
+ for (const nestedValue of nestedValues) {
43
+ await this.formatValues(nestedValue.values, nestedValue.displayValues, fields, nestedValue.mergedFieldNames);
44
+ }
45
+ }
46
+ }
47
+ /** @alpha */
48
+ export class ContentPropertyValueFormatter {
49
+ constructor(_koqValueFormatter) {
50
+ this._koqValueFormatter = _koqValueFormatter;
51
+ }
52
+ async formatPropertyValue(field, value, unitSystem) {
53
+ if (isFieldWithKoq(field) && typeof value === "number") {
54
+ const koq = field.properties[0].property.kindOfQuantity;
55
+ const formattedValue = await this._koqValueFormatter.format(value, { koqName: koq.name, unitSystem });
56
+ if (formattedValue !== undefined)
57
+ return formattedValue;
58
+ }
59
+ return this.formatValue(field.type, value);
60
+ }
61
+ formatValue(type, value) {
62
+ switch (type.valueFormat) {
63
+ case PropertyValueFormat.Primitive:
64
+ return this.formatPrimitiveValue(type, value);
65
+ case PropertyValueFormat.Array:
66
+ return this.formatArrayValue(type, value);
67
+ case PropertyValueFormat.Struct:
68
+ return this.formatStructValue(type, value);
69
+ }
70
+ }
71
+ formatPrimitiveValue(type, value) {
72
+ if (value === undefined)
73
+ return "";
74
+ if (type.typeName === "point2d" && isPoint2d(value)) {
75
+ return `X: ${formatDouble(value.x)} Y: ${formatDouble(value.y)}`;
76
+ }
77
+ if (type.typeName === "point3d" && isPoint3d(value)) {
78
+ return `X: ${formatDouble(value.x)} Y: ${formatDouble(value.y)} Z: ${formatDouble(value.z)}`;
79
+ }
80
+ if (type.typeName === "dateTime") {
81
+ assert(typeof value === "string");
82
+ return value;
83
+ }
84
+ if (type.typeName === "bool" || type.typeName === "boolean") {
85
+ assert(typeof value === "boolean");
86
+ return value ? "@Presentation:value.true@" : "@Presentation:value.false@";
87
+ }
88
+ if (type.typeName === "int" || type.typeName === "long") {
89
+ assert(isNumber(value));
90
+ return value.toFixed(0);
91
+ }
92
+ if (type.typeName === "double") {
93
+ assert(isNumber(value));
94
+ return formatDouble(value);
95
+ }
96
+ if (type.typeName === "navigation") {
97
+ assert(Value.isNavigationValue(value));
98
+ return value.label.displayValue;
99
+ }
100
+ return value.toString();
101
+ }
102
+ formatStructValue(type, value) {
103
+ if (!Value.isMap(value))
104
+ return {};
105
+ const formattedMember = {};
106
+ for (const member of type.members) {
107
+ formattedMember[member.name] = this.formatValue(member.type, value[member.name]);
108
+ }
109
+ return formattedMember;
110
+ }
111
+ formatArrayValue(type, value) {
112
+ if (!Value.isArray(value))
113
+ return [];
114
+ return value.map((arrayVal) => this.formatValue(type.memberType, arrayVal));
115
+ }
116
+ }
117
+ function formatDouble(value) {
118
+ return value.toFixed(2);
119
+ }
120
+ function isFieldWithKoq(field) {
121
+ return field.isPropertiesField()
122
+ && field.properties.length > 0
123
+ && field.properties[0].property.kindOfQuantity !== undefined;
124
+ }
125
+ function isPoint2d(obj) {
126
+ return obj !== undefined && isNumber(obj.x) && isNumber(obj.y);
127
+ }
128
+ function isPoint3d(obj) {
129
+ return isPoint2d(obj) && isNumber(obj.z);
130
+ }
131
+ function isNumber(obj) {
132
+ return !isNaN(Number(obj));
133
+ }
134
+ //# sourceMappingURL=PropertyValueFormatter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PropertyValueFormatter.js","sourceRoot":"","sources":["../../../../src/presentation-common/content/PropertyValueFormatter.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Content\r\n */\r\n\r\nimport { assert } from \"@itwin/core-bentley\";\r\nimport { UnitSystemKey } from \"@itwin/core-quantity\";\r\nimport { KindOfQuantityInfo, PropertyInfo } from \"../EC\";\r\nimport { KoqPropertyValueFormatter } from \"../KoqPropertyValueFormatter\";\r\nimport { ValuesDictionary } from \"../Utils\";\r\nimport { Content } from \"./Content\";\r\nimport { Field, PropertiesField } from \"./Fields\";\r\nimport { ArrayTypeDescription, PrimitiveTypeDescription, PropertyValueFormat, StructTypeDescription, TypeDescription } from \"./TypeDescription\";\r\nimport { DisplayValue, DisplayValuesMap, NestedContentValue, Value } from \"./Value\";\r\n\r\n/** @alpha */\r\nexport class ContentFormatter {\r\n constructor(private _propertyValueFormatter: ContentPropertyValueFormatter, private _unitSystem?: UnitSystemKey) { }\r\n\r\n public async formatContent(content: Content) {\r\n const descriptor = content.descriptor;\r\n for (const item of content.contentSet) {\r\n await this.formatValues(item.values, item.displayValues, descriptor.fields, item.mergedFieldNames);\r\n }\r\n return content;\r\n }\r\n\r\n private async formatValues(values: ValuesDictionary<Value>, displayValues: ValuesDictionary<DisplayValue>, fields: Field[], mergedFields: string[]) {\r\n for (const field of fields) {\r\n const value = values[field.name];\r\n\r\n // format display value of merged values\r\n if (mergedFields.includes(field.name)) {\r\n displayValues[field.name] = \"@Presentation:label.varies@\";\r\n continue;\r\n }\r\n\r\n // format display values of nested content field\r\n if (field.isNestedContentField()) {\r\n assert(Value.isNestedContent(value));\r\n await this.formatNestedContentDisplayValues(value, field.nestedFields);\r\n continue;\r\n }\r\n\r\n displayValues[field.name] = await this._propertyValueFormatter.formatPropertyValue(field, value, this._unitSystem);\r\n }\r\n }\r\n\r\n private async formatNestedContentDisplayValues(nestedValues: NestedContentValue[], fields: Field[]) {\r\n for (const nestedValue of nestedValues) {\r\n await this.formatValues(nestedValue.values, nestedValue.displayValues, fields, nestedValue.mergedFieldNames);\r\n }\r\n }\r\n\r\n}\r\n\r\n/** @alpha */\r\nexport class ContentPropertyValueFormatter {\r\n constructor(private _koqValueFormatter: KoqPropertyValueFormatter) { }\r\n\r\n public async formatPropertyValue(field: Field, value: Value, unitSystem?: UnitSystemKey): Promise<DisplayValue> {\r\n if (isFieldWithKoq(field) && typeof value === \"number\") {\r\n const koq = field.properties[0].property.kindOfQuantity;\r\n const formattedValue = await this._koqValueFormatter.format(value, { koqName: koq.name, unitSystem });\r\n if (formattedValue !== undefined)\r\n return formattedValue;\r\n }\r\n\r\n return this.formatValue(field.type, value);\r\n }\r\n\r\n public formatValue(type: TypeDescription, value: Value): DisplayValue {\r\n switch (type.valueFormat) {\r\n case PropertyValueFormat.Primitive:\r\n return this.formatPrimitiveValue(type, value);\r\n case PropertyValueFormat.Array:\r\n return this.formatArrayValue(type, value);\r\n case PropertyValueFormat.Struct:\r\n return this.formatStructValue(type, value);\r\n }\r\n }\r\n\r\n public formatPrimitiveValue(type: PrimitiveTypeDescription, value: Value) {\r\n if (value === undefined)\r\n return \"\";\r\n\r\n if (type.typeName === \"point2d\" && isPoint2d(value)) {\r\n return `X: ${formatDouble(value.x)} Y: ${formatDouble(value.y)}`;\r\n }\r\n if (type.typeName === \"point3d\" && isPoint3d(value)) {\r\n return `X: ${formatDouble(value.x)} Y: ${formatDouble(value.y)} Z: ${formatDouble(value.z)}`;\r\n }\r\n if (type.typeName === \"dateTime\") {\r\n assert(typeof value === \"string\");\r\n return value;\r\n }\r\n if (type.typeName === \"bool\" || type.typeName === \"boolean\") {\r\n assert(typeof value === \"boolean\");\r\n return value ? \"@Presentation:value.true@\" : \"@Presentation:value.false@\";\r\n }\r\n if (type.typeName === \"int\" || type.typeName === \"long\") {\r\n assert(isNumber(value));\r\n return value.toFixed(0);\r\n }\r\n if (type.typeName === \"double\") {\r\n assert(isNumber(value));\r\n return formatDouble(value);\r\n }\r\n if (type.typeName === \"navigation\") {\r\n assert(Value.isNavigationValue(value));\r\n return value.label.displayValue;\r\n }\r\n\r\n return value.toString();\r\n }\r\n\r\n public formatStructValue(type: StructTypeDescription, value: Value) {\r\n if (!Value.isMap(value))\r\n return {};\r\n\r\n const formattedMember: DisplayValuesMap = {};\r\n for (const member of type.members) {\r\n formattedMember[member.name] = this.formatValue(member.type, value[member.name]);\r\n }\r\n return formattedMember;\r\n }\r\n\r\n public formatArrayValue(type: ArrayTypeDescription, value: Value) {\r\n if (!Value.isArray(value))\r\n return [];\r\n\r\n return value.map((arrayVal) => this.formatValue(type.memberType, arrayVal));\r\n }\r\n}\r\n\r\nfunction formatDouble(value: number) {\r\n return value.toFixed(2);\r\n}\r\n\r\ntype FieldWithKoq = PropertiesField & {\r\n properties: [{\r\n property: PropertyInfo & {\r\n kindOfQuantity: KindOfQuantityInfo;\r\n };\r\n }];\r\n};\r\n\r\nfunction isFieldWithKoq(field: Field): field is FieldWithKoq {\r\n return field.isPropertiesField()\r\n && field.properties.length > 0\r\n && field.properties[0].property.kindOfQuantity !== undefined;\r\n}\r\n\r\nfunction isPoint2d(obj: Value): obj is { x: number, y: number } {\r\n return obj !== undefined && isNumber((obj as any).x) && isNumber((obj as any).y);\r\n}\r\n\r\nfunction isPoint3d(obj: Value): obj is { x: number, y: number, z: number } {\r\n return isPoint2d(obj) && isNumber((obj as any).z);\r\n}\r\n\r\nfunction isNumber(obj: Value): obj is number {\r\n return !isNaN(Number(obj));\r\n}\r\n"]}
@@ -1,12 +1,12 @@
1
- /** @packageDocumentation
2
- * @module Content
3
- */
4
- /**
5
- * Describes property renderer used for a content [[Field]].
6
- * @public
7
- */
8
- export interface RendererDescription {
9
- /** Renderer name. */
10
- name: string;
11
- }
1
+ /** @packageDocumentation
2
+ * @module Content
3
+ */
4
+ /**
5
+ * Describes property renderer used for a content [[Field]].
6
+ * @public
7
+ */
8
+ export interface RendererDescription {
9
+ /** Renderer name. */
10
+ name: string;
11
+ }
12
12
  //# sourceMappingURL=Renderer.d.ts.map
@@ -1,9 +1,9 @@
1
- /*---------------------------------------------------------------------------------------------
2
- * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
3
- * See LICENSE.md in the project root for license terms and full copyright notice.
4
- *--------------------------------------------------------------------------------------------*/
5
- /** @packageDocumentation
6
- * @module Content
7
- */
8
- export {};
1
+ /*---------------------------------------------------------------------------------------------
2
+ * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
3
+ * See LICENSE.md in the project root for license terms and full copyright notice.
4
+ *--------------------------------------------------------------------------------------------*/
5
+ /** @packageDocumentation
6
+ * @module Content
7
+ */
8
+ export {};
9
9
  //# sourceMappingURL=Renderer.js.map
@@ -1,73 +1,73 @@
1
- /** @packageDocumentation
2
- * @module Content
3
- */
4
- /**
5
- * Format of the property value.
6
- * @public
7
- */
8
- export declare enum PropertyValueFormat {
9
- /** Primitive value */
10
- Primitive = "Primitive",
11
- /** Array value */
12
- Array = "Array",
13
- /** Struct value */
14
- Struct = "Struct"
15
- }
16
- /**
17
- * Data structure for base content field type description. Not
18
- * meant to be used directly, see `TypeDescription`.
19
- *
20
- * @public
21
- */
22
- export interface BaseTypeDescription {
23
- /** Value format */
24
- valueFormat: PropertyValueFormat;
25
- /** Type name */
26
- typeName: string;
27
- }
28
- /**
29
- * Type description for primitive properties.
30
- * @public
31
- */
32
- export interface PrimitiveTypeDescription extends BaseTypeDescription {
33
- /** Primitive format */
34
- valueFormat: PropertyValueFormat.Primitive;
35
- }
36
- /**
37
- * Type description for array properties.
38
- * @public
39
- */
40
- export interface ArrayTypeDescription extends BaseTypeDescription {
41
- /** Array format */
42
- valueFormat: PropertyValueFormat.Array;
43
- /** Type of array items */
44
- memberType: TypeDescription;
45
- }
46
- /**
47
- * A data structure that describes a struct member.
48
- * @public
49
- */
50
- export interface StructFieldMemberDescription {
51
- /** Unique name of a struct member */
52
- name: string;
53
- /** Label of the struct member */
54
- label: string;
55
- /** Type of the struct member */
56
- type: TypeDescription;
57
- }
58
- /**
59
- * Type description for struct properties.
60
- * @public
61
- */
62
- export interface StructTypeDescription extends BaseTypeDescription {
63
- /** Struct format */
64
- valueFormat: PropertyValueFormat.Struct;
65
- /** Type descriptions of struct members */
66
- members: StructFieldMemberDescription[];
67
- }
68
- /**
69
- * One of content field type descriptions.
70
- * @public
71
- */
72
- export declare type TypeDescription = PrimitiveTypeDescription | ArrayTypeDescription | StructTypeDescription;
1
+ /** @packageDocumentation
2
+ * @module Content
3
+ */
4
+ /**
5
+ * Format of the property value.
6
+ * @public
7
+ */
8
+ export declare enum PropertyValueFormat {
9
+ /** Primitive value */
10
+ Primitive = "Primitive",
11
+ /** Array value */
12
+ Array = "Array",
13
+ /** Struct value */
14
+ Struct = "Struct"
15
+ }
16
+ /**
17
+ * Data structure for base content field type description. Not
18
+ * meant to be used directly, see `TypeDescription`.
19
+ *
20
+ * @public
21
+ */
22
+ export interface BaseTypeDescription {
23
+ /** Value format */
24
+ valueFormat: PropertyValueFormat;
25
+ /** Type name */
26
+ typeName: string;
27
+ }
28
+ /**
29
+ * Type description for primitive properties.
30
+ * @public
31
+ */
32
+ export interface PrimitiveTypeDescription extends BaseTypeDescription {
33
+ /** Primitive format */
34
+ valueFormat: PropertyValueFormat.Primitive;
35
+ }
36
+ /**
37
+ * Type description for array properties.
38
+ * @public
39
+ */
40
+ export interface ArrayTypeDescription extends BaseTypeDescription {
41
+ /** Array format */
42
+ valueFormat: PropertyValueFormat.Array;
43
+ /** Type of array items */
44
+ memberType: TypeDescription;
45
+ }
46
+ /**
47
+ * A data structure that describes a struct member.
48
+ * @public
49
+ */
50
+ export interface StructFieldMemberDescription {
51
+ /** Unique name of a struct member */
52
+ name: string;
53
+ /** Label of the struct member */
54
+ label: string;
55
+ /** Type of the struct member */
56
+ type: TypeDescription;
57
+ }
58
+ /**
59
+ * Type description for struct properties.
60
+ * @public
61
+ */
62
+ export interface StructTypeDescription extends BaseTypeDescription {
63
+ /** Struct format */
64
+ valueFormat: PropertyValueFormat.Struct;
65
+ /** Type descriptions of struct members */
66
+ members: StructFieldMemberDescription[];
67
+ }
68
+ /**
69
+ * One of content field type descriptions.
70
+ * @public
71
+ */
72
+ export type TypeDescription = PrimitiveTypeDescription | ArrayTypeDescription | StructTypeDescription;
73
73
  //# sourceMappingURL=TypeDescription.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"TypeDescription.d.ts","sourceRoot":"","sources":["../../../../src/presentation-common/content/TypeDescription.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH;;;GAGG;AACH,oBAAY,mBAAmB;IAC7B,sBAAsB;IACtB,SAAS,cAAc;IACvB,kBAAkB;IAClB,KAAK,UAAU;IACf,mBAAmB;IACnB,MAAM,WAAW;CAClB;AAED;;;;;GAKG;AACH,MAAM,WAAW,mBAAmB;IAClC,mBAAmB;IACnB,WAAW,EAAE,mBAAmB,CAAC;IACjC,gBAAgB;IAChB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;;GAGG;AACH,MAAM,WAAW,wBAAyB,SAAQ,mBAAmB;IACnE,uBAAuB;IACvB,WAAW,EAAE,mBAAmB,CAAC,SAAS,CAAC;CAC5C;AAED;;;GAGG;AACH,MAAM,WAAW,oBAAqB,SAAQ,mBAAmB;IAC/D,mBAAmB;IACnB,WAAW,EAAE,mBAAmB,CAAC,KAAK,CAAC;IACvC,0BAA0B;IAC1B,UAAU,EAAE,eAAe,CAAC;CAC7B;AAED;;;GAGG;AACH,MAAM,WAAW,4BAA4B;IAC3C,qCAAqC;IACrC,IAAI,EAAE,MAAM,CAAC;IACb,iCAAiC;IACjC,KAAK,EAAE,MAAM,CAAC;IACd,gCAAgC;IAChC,IAAI,EAAE,eAAe,CAAC;CACvB;AAED;;;GAGG;AACH,MAAM,WAAW,qBAAsB,SAAQ,mBAAmB;IAChE,oBAAoB;IACpB,WAAW,EAAE,mBAAmB,CAAC,MAAM,CAAC;IACxC,0CAA0C;IAC1C,OAAO,EAAE,4BAA4B,EAAE,CAAC;CACzC;AAED;;;GAGG;AACH,oBAAY,eAAe,GAAG,wBAAwB,GAAG,oBAAoB,GAAG,qBAAqB,CAAC"}
1
+ {"version":3,"file":"TypeDescription.d.ts","sourceRoot":"","sources":["../../../../src/presentation-common/content/TypeDescription.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH;;;GAGG;AACH,oBAAY,mBAAmB;IAC7B,sBAAsB;IACtB,SAAS,cAAc;IACvB,kBAAkB;IAClB,KAAK,UAAU;IACf,mBAAmB;IACnB,MAAM,WAAW;CAClB;AAED;;;;;GAKG;AACH,MAAM,WAAW,mBAAmB;IAClC,mBAAmB;IACnB,WAAW,EAAE,mBAAmB,CAAC;IACjC,gBAAgB;IAChB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;;GAGG;AACH,MAAM,WAAW,wBAAyB,SAAQ,mBAAmB;IACnE,uBAAuB;IACvB,WAAW,EAAE,mBAAmB,CAAC,SAAS,CAAC;CAC5C;AAED;;;GAGG;AACH,MAAM,WAAW,oBAAqB,SAAQ,mBAAmB;IAC/D,mBAAmB;IACnB,WAAW,EAAE,mBAAmB,CAAC,KAAK,CAAC;IACvC,0BAA0B;IAC1B,UAAU,EAAE,eAAe,CAAC;CAC7B;AAED;;;GAGG;AACH,MAAM,WAAW,4BAA4B;IAC3C,qCAAqC;IACrC,IAAI,EAAE,MAAM,CAAC;IACb,iCAAiC;IACjC,KAAK,EAAE,MAAM,CAAC;IACd,gCAAgC;IAChC,IAAI,EAAE,eAAe,CAAC;CACvB;AAED;;;GAGG;AACH,MAAM,WAAW,qBAAsB,SAAQ,mBAAmB;IAChE,oBAAoB;IACpB,WAAW,EAAE,mBAAmB,CAAC,MAAM,CAAC;IACxC,0CAA0C;IAC1C,OAAO,EAAE,4BAA4B,EAAE,CAAC;CACzC;AAED;;;GAGG;AACH,MAAM,MAAM,eAAe,GAAG,wBAAwB,GAAG,oBAAoB,GAAG,qBAAqB,CAAC"}
@@ -1,21 +1,21 @@
1
- /*---------------------------------------------------------------------------------------------
2
- * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
3
- * See LICENSE.md in the project root for license terms and full copyright notice.
4
- *--------------------------------------------------------------------------------------------*/
5
- /** @packageDocumentation
6
- * @module Content
7
- */
8
- /**
9
- * Format of the property value.
10
- * @public
11
- */
12
- export var PropertyValueFormat;
13
- (function (PropertyValueFormat) {
14
- /** Primitive value */
15
- PropertyValueFormat["Primitive"] = "Primitive";
16
- /** Array value */
17
- PropertyValueFormat["Array"] = "Array";
18
- /** Struct value */
19
- PropertyValueFormat["Struct"] = "Struct";
20
- })(PropertyValueFormat || (PropertyValueFormat = {}));
1
+ /*---------------------------------------------------------------------------------------------
2
+ * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
3
+ * See LICENSE.md in the project root for license terms and full copyright notice.
4
+ *--------------------------------------------------------------------------------------------*/
5
+ /** @packageDocumentation
6
+ * @module Content
7
+ */
8
+ /**
9
+ * Format of the property value.
10
+ * @public
11
+ */
12
+ export var PropertyValueFormat;
13
+ (function (PropertyValueFormat) {
14
+ /** Primitive value */
15
+ PropertyValueFormat["Primitive"] = "Primitive";
16
+ /** Array value */
17
+ PropertyValueFormat["Array"] = "Array";
18
+ /** Struct value */
19
+ PropertyValueFormat["Struct"] = "Struct";
20
+ })(PropertyValueFormat || (PropertyValueFormat = {}));
21
21
  //# sourceMappingURL=TypeDescription.js.map