@itwin/presentation-common 5.0.0-dev.8 → 5.0.0-dev.82
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.
- package/CHANGELOG.md +46 -1
- package/Ruleset.schema.json +3 -258
- package/lib/cjs/presentation-common/AsyncTasks.d.ts +4 -4
- package/lib/cjs/presentation-common/AsyncTasks.d.ts.map +1 -1
- package/lib/cjs/presentation-common/AsyncTasks.js +5 -6
- package/lib/cjs/presentation-common/AsyncTasks.js.map +1 -1
- package/lib/cjs/presentation-common/EC.d.ts +36 -80
- package/lib/cjs/presentation-common/EC.d.ts.map +1 -1
- package/lib/cjs/presentation-common/EC.js +1 -97
- package/lib/cjs/presentation-common/EC.js.map +1 -1
- package/lib/cjs/presentation-common/ElementProperties.js +16 -9
- package/lib/cjs/presentation-common/ElementProperties.js.map +1 -1
- package/lib/cjs/presentation-common/Error.d.ts +2 -0
- package/lib/cjs/presentation-common/Error.d.ts.map +1 -1
- package/lib/cjs/presentation-common/Error.js +2 -0
- package/lib/cjs/presentation-common/Error.js.map +1 -1
- package/lib/cjs/presentation-common/KeySet.d.ts +2 -2
- package/lib/cjs/presentation-common/KeySet.d.ts.map +1 -1
- package/lib/cjs/presentation-common/KeySet.js +9 -11
- package/lib/cjs/presentation-common/KeySet.js.map +1 -1
- package/lib/cjs/presentation-common/KoqPropertyValueFormatter.js +4 -1
- package/lib/cjs/presentation-common/KoqPropertyValueFormatter.js.map +1 -1
- package/lib/cjs/presentation-common/LabelDefinition.d.ts +0 -48
- package/lib/cjs/presentation-common/LabelDefinition.d.ts.map +1 -1
- package/lib/cjs/presentation-common/LabelDefinition.js +1 -44
- package/lib/cjs/presentation-common/LabelDefinition.js.map +1 -1
- package/lib/cjs/presentation-common/LocalizationHelper.js +1 -0
- package/lib/cjs/presentation-common/LocalizationHelper.js.map +1 -1
- package/lib/cjs/presentation-common/PresentationManagerOptions.d.ts +31 -10
- package/lib/cjs/presentation-common/PresentationManagerOptions.d.ts.map +1 -1
- package/lib/cjs/presentation-common/PresentationManagerOptions.js +0 -5
- package/lib/cjs/presentation-common/PresentationManagerOptions.js.map +1 -1
- package/lib/cjs/presentation-common/PresentationRpcInterface.d.ts +9 -9
- package/lib/cjs/presentation-common/PresentationRpcInterface.d.ts.map +1 -1
- package/lib/cjs/presentation-common/PresentationRpcInterface.js +36 -21
- package/lib/cjs/presentation-common/PresentationRpcInterface.js.map +1 -1
- package/lib/cjs/presentation-common/RegisteredRuleset.d.ts +3 -2
- package/lib/cjs/presentation-common/RegisteredRuleset.d.ts.map +1 -1
- package/lib/cjs/presentation-common/RegisteredRuleset.js +9 -1
- package/lib/cjs/presentation-common/RegisteredRuleset.js.map +1 -1
- package/lib/cjs/presentation-common/RpcRequestsHandler.d.ts +9 -12
- package/lib/cjs/presentation-common/RpcRequestsHandler.d.ts.map +1 -1
- package/lib/cjs/presentation-common/RpcRequestsHandler.js +37 -30
- package/lib/cjs/presentation-common/RpcRequestsHandler.js.map +1 -1
- package/lib/cjs/presentation-common/RulesetVariables.d.ts +1 -46
- package/lib/cjs/presentation-common/RulesetVariables.d.ts.map +1 -1
- package/lib/cjs/presentation-common/RulesetVariables.js.map +1 -1
- package/lib/cjs/presentation-common/Update.d.ts +2 -79
- package/lib/cjs/presentation-common/Update.d.ts.map +1 -1
- package/lib/cjs/presentation-common/Update.js +1 -104
- package/lib/cjs/presentation-common/Update.js.map +1 -1
- package/lib/cjs/presentation-common/Utils.d.ts +21 -0
- package/lib/cjs/presentation-common/Utils.d.ts.map +1 -1
- package/lib/cjs/presentation-common/Utils.js +57 -0
- package/lib/cjs/presentation-common/Utils.js.map +1 -1
- package/lib/cjs/presentation-common/content/Content.d.ts +0 -7
- package/lib/cjs/presentation-common/content/Content.d.ts.map +1 -1
- package/lib/cjs/presentation-common/content/Content.js +5 -10
- package/lib/cjs/presentation-common/content/Content.js.map +1 -1
- package/lib/cjs/presentation-common/content/ContentTraverser.d.ts +1 -1
- package/lib/cjs/presentation-common/content/ContentTraverser.d.ts.map +1 -1
- package/lib/cjs/presentation-common/content/ContentTraverser.js +116 -28
- package/lib/cjs/presentation-common/content/ContentTraverser.js.map +1 -1
- package/lib/cjs/presentation-common/content/Descriptor.d.ts +2 -31
- package/lib/cjs/presentation-common/content/Descriptor.d.ts.map +1 -1
- package/lib/cjs/presentation-common/content/Descriptor.js +68 -22
- package/lib/cjs/presentation-common/content/Descriptor.js.map +1 -1
- package/lib/cjs/presentation-common/content/Fields.d.ts +151 -27
- package/lib/cjs/presentation-common/content/Fields.d.ts.map +1 -1
- package/lib/cjs/presentation-common/content/Fields.js +264 -140
- package/lib/cjs/presentation-common/content/Fields.js.map +1 -1
- package/lib/cjs/presentation-common/content/Item.d.ts +26 -31
- package/lib/cjs/presentation-common/content/Item.d.ts.map +1 -1
- package/lib/cjs/presentation-common/content/Item.js +52 -67
- package/lib/cjs/presentation-common/content/Item.js.map +1 -1
- package/lib/cjs/presentation-common/content/Property.d.ts +2 -12
- package/lib/cjs/presentation-common/content/Property.d.ts.map +1 -1
- package/lib/cjs/presentation-common/content/Property.js +0 -18
- package/lib/cjs/presentation-common/content/Property.js.map +1 -1
- package/lib/cjs/presentation-common/content/PropertyValueFormatter.js +3 -0
- package/lib/cjs/presentation-common/content/PropertyValueFormatter.js.map +1 -1
- package/lib/cjs/presentation-common/content/Value.d.ts +5 -107
- package/lib/cjs/presentation-common/content/Value.d.ts.map +1 -1
- package/lib/cjs/presentation-common/content/Value.js +1 -215
- package/lib/cjs/presentation-common/content/Value.js.map +1 -1
- package/lib/cjs/presentation-common/hierarchy/HierarchyLevel.d.ts +1 -22
- package/lib/cjs/presentation-common/hierarchy/HierarchyLevel.d.ts.map +1 -1
- package/lib/cjs/presentation-common/hierarchy/HierarchyLevel.js +0 -23
- package/lib/cjs/presentation-common/hierarchy/HierarchyLevel.js.map +1 -1
- package/lib/cjs/presentation-common/hierarchy/Key.d.ts +0 -83
- package/lib/cjs/presentation-common/hierarchy/Key.d.ts.map +1 -1
- package/lib/cjs/presentation-common/hierarchy/Key.js +6 -24
- package/lib/cjs/presentation-common/hierarchy/Key.js.map +1 -1
- package/lib/cjs/presentation-common/hierarchy/Node.d.ts +4 -107
- package/lib/cjs/presentation-common/hierarchy/Node.d.ts.map +1 -1
- package/lib/cjs/presentation-common/hierarchy/Node.js +0 -99
- package/lib/cjs/presentation-common/hierarchy/Node.js.map +1 -1
- package/lib/cjs/presentation-common/hierarchy/NodePathElement.d.ts +1 -67
- package/lib/cjs/presentation-common/hierarchy/NodePathElement.d.ts.map +1 -1
- package/lib/cjs/presentation-common/hierarchy/NodePathElement.js +0 -117
- package/lib/cjs/presentation-common/hierarchy/NodePathElement.js.map +1 -1
- package/lib/cjs/presentation-common/rules/Rule.d.ts +0 -14
- package/lib/cjs/presentation-common/rules/Rule.d.ts.map +1 -1
- package/lib/cjs/presentation-common/rules/Rule.js.map +1 -1
- package/lib/cjs/presentation-common/rules/content/ContentSpecification.d.ts +0 -7
- package/lib/cjs/presentation-common/rules/content/ContentSpecification.d.ts.map +1 -1
- package/lib/cjs/presentation-common/rules/content/ContentSpecification.js.map +1 -1
- package/lib/cjs/presentation-common/rules/customization/CustomizationRule.d.ts +1 -5
- package/lib/cjs/presentation-common/rules/customization/CustomizationRule.d.ts.map +1 -1
- package/lib/cjs/presentation-common/rules/customization/CustomizationRule.js.map +1 -1
- package/lib/cjs/presentation-common/rules/customization/GroupingRule.d.ts +2 -28
- package/lib/cjs/presentation-common/rules/customization/GroupingRule.d.ts.map +1 -1
- package/lib/cjs/presentation-common/rules/customization/GroupingRule.js +1 -15
- package/lib/cjs/presentation-common/rules/customization/GroupingRule.js.map +1 -1
- package/lib/cjs/presentation-common/rules/hierarchy/CustomNodeSpecification.d.ts +2 -0
- package/lib/cjs/presentation-common/rules/hierarchy/CustomNodeSpecification.d.ts.map +1 -1
- package/lib/cjs/presentation-common/rules/hierarchy/CustomNodeSpecification.js.map +1 -1
- package/lib/cjs/presentation-common/rules/hierarchy/InstanceNodesOfSpecificClassesSpecification.d.ts +0 -9
- package/lib/cjs/presentation-common/rules/hierarchy/InstanceNodesOfSpecificClassesSpecification.d.ts.map +1 -1
- package/lib/cjs/presentation-common/rules/hierarchy/InstanceNodesOfSpecificClassesSpecification.js.map +1 -1
- package/lib/cjs/presentation-common/selection/SelectionScope.d.ts +3 -0
- package/lib/cjs/presentation-common/selection/SelectionScope.d.ts.map +1 -1
- package/lib/cjs/presentation-common/selection/SelectionScope.js +1 -0
- package/lib/cjs/presentation-common/selection/SelectionScope.js.map +1 -1
- package/lib/cjs/presentation-common.d.ts +1 -5
- package/lib/cjs/presentation-common.d.ts.map +1 -1
- package/lib/cjs/presentation-common.js +6 -5
- package/lib/cjs/presentation-common.js.map +1 -1
- package/lib/esm/presentation-common/AsyncTasks.d.ts +4 -4
- package/lib/esm/presentation-common/AsyncTasks.d.ts.map +1 -1
- package/lib/esm/presentation-common/AsyncTasks.js +5 -6
- package/lib/esm/presentation-common/AsyncTasks.js.map +1 -1
- package/lib/esm/presentation-common/EC.d.ts +36 -80
- package/lib/esm/presentation-common/EC.d.ts.map +1 -1
- package/lib/esm/presentation-common/EC.js +0 -96
- package/lib/esm/presentation-common/EC.js.map +1 -1
- package/lib/esm/presentation-common/ElementProperties.js +16 -9
- package/lib/esm/presentation-common/ElementProperties.js.map +1 -1
- package/lib/esm/presentation-common/Error.d.ts +2 -0
- package/lib/esm/presentation-common/Error.d.ts.map +1 -1
- package/lib/esm/presentation-common/Error.js +2 -0
- package/lib/esm/presentation-common/Error.js.map +1 -1
- package/lib/esm/presentation-common/KeySet.d.ts +2 -2
- package/lib/esm/presentation-common/KeySet.d.ts.map +1 -1
- package/lib/esm/presentation-common/KeySet.js +9 -11
- package/lib/esm/presentation-common/KeySet.js.map +1 -1
- package/lib/esm/presentation-common/KoqPropertyValueFormatter.js +5 -2
- package/lib/esm/presentation-common/KoqPropertyValueFormatter.js.map +1 -1
- package/lib/esm/presentation-common/LabelDefinition.d.ts +0 -48
- package/lib/esm/presentation-common/LabelDefinition.d.ts.map +1 -1
- package/lib/esm/presentation-common/LabelDefinition.js +0 -43
- package/lib/esm/presentation-common/LabelDefinition.js.map +1 -1
- package/lib/esm/presentation-common/LocalizationHelper.js +1 -0
- package/lib/esm/presentation-common/LocalizationHelper.js.map +1 -1
- package/lib/esm/presentation-common/PresentationManagerOptions.d.ts +31 -10
- package/lib/esm/presentation-common/PresentationManagerOptions.d.ts.map +1 -1
- package/lib/esm/presentation-common/PresentationManagerOptions.js +0 -4
- package/lib/esm/presentation-common/PresentationManagerOptions.js.map +1 -1
- package/lib/esm/presentation-common/PresentationRpcInterface.d.ts +9 -9
- package/lib/esm/presentation-common/PresentationRpcInterface.d.ts.map +1 -1
- package/lib/esm/presentation-common/PresentationRpcInterface.js +38 -22
- package/lib/esm/presentation-common/PresentationRpcInterface.js.map +1 -1
- package/lib/esm/presentation-common/RegisteredRuleset.d.ts +3 -2
- package/lib/esm/presentation-common/RegisteredRuleset.d.ts.map +1 -1
- package/lib/esm/presentation-common/RegisteredRuleset.js +9 -1
- package/lib/esm/presentation-common/RegisteredRuleset.js.map +1 -1
- package/lib/esm/presentation-common/RpcRequestsHandler.d.ts +9 -12
- package/lib/esm/presentation-common/RpcRequestsHandler.d.ts.map +1 -1
- package/lib/esm/presentation-common/RpcRequestsHandler.js +39 -32
- package/lib/esm/presentation-common/RpcRequestsHandler.js.map +1 -1
- package/lib/esm/presentation-common/RulesetVariables.d.ts +1 -46
- package/lib/esm/presentation-common/RulesetVariables.d.ts.map +1 -1
- package/lib/esm/presentation-common/RulesetVariables.js.map +1 -1
- package/lib/esm/presentation-common/Update.d.ts +2 -79
- package/lib/esm/presentation-common/Update.d.ts.map +1 -1
- package/lib/esm/presentation-common/Update.js +0 -103
- package/lib/esm/presentation-common/Update.js.map +1 -1
- package/lib/esm/presentation-common/Utils.d.ts +21 -0
- package/lib/esm/presentation-common/Utils.d.ts.map +1 -1
- package/lib/esm/presentation-common/Utils.js +54 -0
- package/lib/esm/presentation-common/Utils.js.map +1 -1
- package/lib/esm/presentation-common/content/Content.d.ts +0 -7
- package/lib/esm/presentation-common/content/Content.d.ts.map +1 -1
- package/lib/esm/presentation-common/content/Content.js +5 -10
- package/lib/esm/presentation-common/content/Content.js.map +1 -1
- package/lib/esm/presentation-common/content/ContentTraverser.d.ts +1 -1
- package/lib/esm/presentation-common/content/ContentTraverser.d.ts.map +1 -1
- package/lib/esm/presentation-common/content/ContentTraverser.js +117 -29
- package/lib/esm/presentation-common/content/ContentTraverser.js.map +1 -1
- package/lib/esm/presentation-common/content/Descriptor.d.ts +2 -31
- package/lib/esm/presentation-common/content/Descriptor.d.ts.map +1 -1
- package/lib/esm/presentation-common/content/Descriptor.js +68 -22
- package/lib/esm/presentation-common/content/Descriptor.js.map +1 -1
- package/lib/esm/presentation-common/content/Fields.d.ts +151 -27
- package/lib/esm/presentation-common/content/Fields.d.ts.map +1 -1
- package/lib/esm/presentation-common/content/Fields.js +264 -140
- package/lib/esm/presentation-common/content/Fields.js.map +1 -1
- package/lib/esm/presentation-common/content/Item.d.ts +26 -31
- package/lib/esm/presentation-common/content/Item.d.ts.map +1 -1
- package/lib/esm/presentation-common/content/Item.js +52 -67
- package/lib/esm/presentation-common/content/Item.js.map +1 -1
- package/lib/esm/presentation-common/content/Property.d.ts +2 -12
- package/lib/esm/presentation-common/content/Property.d.ts.map +1 -1
- package/lib/esm/presentation-common/content/Property.js +0 -18
- package/lib/esm/presentation-common/content/Property.js.map +1 -1
- package/lib/esm/presentation-common/content/PropertyValueFormatter.js +3 -0
- package/lib/esm/presentation-common/content/PropertyValueFormatter.js.map +1 -1
- package/lib/esm/presentation-common/content/Value.d.ts +5 -107
- package/lib/esm/presentation-common/content/Value.d.ts.map +1 -1
- package/lib/esm/presentation-common/content/Value.js +0 -214
- package/lib/esm/presentation-common/content/Value.js.map +1 -1
- package/lib/esm/presentation-common/hierarchy/HierarchyLevel.d.ts +1 -22
- package/lib/esm/presentation-common/hierarchy/HierarchyLevel.d.ts.map +1 -1
- package/lib/esm/presentation-common/hierarchy/HierarchyLevel.js +1 -22
- package/lib/esm/presentation-common/hierarchy/HierarchyLevel.js.map +1 -1
- package/lib/esm/presentation-common/hierarchy/Key.d.ts +0 -83
- package/lib/esm/presentation-common/hierarchy/Key.d.ts.map +1 -1
- package/lib/esm/presentation-common/hierarchy/Key.js +6 -24
- package/lib/esm/presentation-common/hierarchy/Key.js.map +1 -1
- package/lib/esm/presentation-common/hierarchy/Node.d.ts +4 -107
- package/lib/esm/presentation-common/hierarchy/Node.d.ts.map +1 -1
- package/lib/esm/presentation-common/hierarchy/Node.js +1 -98
- package/lib/esm/presentation-common/hierarchy/Node.js.map +1 -1
- package/lib/esm/presentation-common/hierarchy/NodePathElement.d.ts +1 -67
- package/lib/esm/presentation-common/hierarchy/NodePathElement.d.ts.map +1 -1
- package/lib/esm/presentation-common/hierarchy/NodePathElement.js +1 -116
- package/lib/esm/presentation-common/hierarchy/NodePathElement.js.map +1 -1
- package/lib/esm/presentation-common/rules/Rule.d.ts +0 -14
- package/lib/esm/presentation-common/rules/Rule.d.ts.map +1 -1
- package/lib/esm/presentation-common/rules/Rule.js.map +1 -1
- package/lib/esm/presentation-common/rules/content/ContentSpecification.d.ts +0 -7
- package/lib/esm/presentation-common/rules/content/ContentSpecification.d.ts.map +1 -1
- package/lib/esm/presentation-common/rules/content/ContentSpecification.js.map +1 -1
- package/lib/esm/presentation-common/rules/customization/CustomizationRule.d.ts +1 -5
- package/lib/esm/presentation-common/rules/customization/CustomizationRule.d.ts.map +1 -1
- package/lib/esm/presentation-common/rules/customization/CustomizationRule.js.map +1 -1
- package/lib/esm/presentation-common/rules/customization/GroupingRule.d.ts +2 -28
- package/lib/esm/presentation-common/rules/customization/GroupingRule.d.ts.map +1 -1
- package/lib/esm/presentation-common/rules/customization/GroupingRule.js +0 -14
- package/lib/esm/presentation-common/rules/customization/GroupingRule.js.map +1 -1
- package/lib/esm/presentation-common/rules/hierarchy/CustomNodeSpecification.d.ts +2 -0
- package/lib/esm/presentation-common/rules/hierarchy/CustomNodeSpecification.d.ts.map +1 -1
- package/lib/esm/presentation-common/rules/hierarchy/CustomNodeSpecification.js.map +1 -1
- package/lib/esm/presentation-common/rules/hierarchy/InstanceNodesOfSpecificClassesSpecification.d.ts +0 -9
- package/lib/esm/presentation-common/rules/hierarchy/InstanceNodesOfSpecificClassesSpecification.d.ts.map +1 -1
- package/lib/esm/presentation-common/rules/hierarchy/InstanceNodesOfSpecificClassesSpecification.js.map +1 -1
- package/lib/esm/presentation-common/selection/SelectionScope.d.ts +3 -0
- package/lib/esm/presentation-common/selection/SelectionScope.d.ts.map +1 -1
- package/lib/esm/presentation-common/selection/SelectionScope.js +1 -0
- package/lib/esm/presentation-common/selection/SelectionScope.js.map +1 -1
- package/lib/esm/presentation-common.d.ts +1 -5
- package/lib/esm/presentation-common.d.ts.map +1 -1
- package/lib/esm/presentation-common.js +1 -5
- package/lib/esm/presentation-common.js.map +1 -1
- package/package.json +17 -18
- package/lib/cjs/presentation-common/rules/customization/CheckBoxRule.d.ts +0 -45
- package/lib/cjs/presentation-common/rules/customization/CheckBoxRule.d.ts.map +0 -1
- package/lib/cjs/presentation-common/rules/customization/CheckBoxRule.js +0 -10
- package/lib/cjs/presentation-common/rules/customization/CheckBoxRule.js.map +0 -1
- package/lib/cjs/presentation-common/rules/customization/ImageIdOverride.d.ts +0 -30
- package/lib/cjs/presentation-common/rules/customization/ImageIdOverride.d.ts.map +0 -1
- package/lib/cjs/presentation-common/rules/customization/ImageIdOverride.js +0 -10
- package/lib/cjs/presentation-common/rules/customization/ImageIdOverride.js.map +0 -1
- package/lib/cjs/presentation-common/rules/customization/LabelOverride.d.ts +0 -41
- package/lib/cjs/presentation-common/rules/customization/LabelOverride.d.ts.map +0 -1
- package/lib/cjs/presentation-common/rules/customization/LabelOverride.js +0 -10
- package/lib/cjs/presentation-common/rules/customization/LabelOverride.js.map +0 -1
- package/lib/cjs/presentation-common/rules/customization/StyleOverride.d.ts +0 -49
- package/lib/cjs/presentation-common/rules/customization/StyleOverride.d.ts.map +0 -1
- package/lib/cjs/presentation-common/rules/customization/StyleOverride.js +0 -10
- package/lib/cjs/presentation-common/rules/customization/StyleOverride.js.map +0 -1
- package/lib/esm/presentation-common/rules/customization/CheckBoxRule.d.ts +0 -45
- package/lib/esm/presentation-common/rules/customization/CheckBoxRule.d.ts.map +0 -1
- package/lib/esm/presentation-common/rules/customization/CheckBoxRule.js +0 -9
- package/lib/esm/presentation-common/rules/customization/CheckBoxRule.js.map +0 -1
- package/lib/esm/presentation-common/rules/customization/ImageIdOverride.d.ts +0 -30
- package/lib/esm/presentation-common/rules/customization/ImageIdOverride.d.ts.map +0 -1
- package/lib/esm/presentation-common/rules/customization/ImageIdOverride.js +0 -9
- package/lib/esm/presentation-common/rules/customization/ImageIdOverride.js.map +0 -1
- package/lib/esm/presentation-common/rules/customization/LabelOverride.d.ts +0 -41
- package/lib/esm/presentation-common/rules/customization/LabelOverride.d.ts.map +0 -1
- package/lib/esm/presentation-common/rules/customization/LabelOverride.js +0 -9
- package/lib/esm/presentation-common/rules/customization/LabelOverride.js.map +0 -1
- package/lib/esm/presentation-common/rules/customization/StyleOverride.d.ts +0 -49
- package/lib/esm/presentation-common/rules/customization/StyleOverride.d.ts.map +0 -1
- package/lib/esm/presentation-common/rules/customization/StyleOverride.js +0 -9
- package/lib/esm/presentation-common/rules/customization/StyleOverride.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Property.d.ts","sourceRoot":"","sources":["../../../../src/presentation-common/content/Property.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"Property.d.ts","sourceRoot":"","sources":["../../../../src/presentation-common/content/Property.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAE,SAAS,EAAE,uBAAuB,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,OAAO,CAAC;AAE3F;;;;;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,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;CACF;AAED;;;GAGG;AACH,MAAM,WAAW,YAAY,CAAC,cAAc,GAAG,SAAS;IACtD,QAAQ,EAAE,gBAAgB,CAAC,cAAc,CAAC,CAAC;CAC5C"}
|
|
@@ -12,15 +12,6 @@ const EC_1 = require("../EC");
|
|
|
12
12
|
/** @public */
|
|
13
13
|
var Property;
|
|
14
14
|
(function (Property) {
|
|
15
|
-
/**
|
|
16
|
-
* Serialize [[Property]] to JSON
|
|
17
|
-
* @deprecated in 3.x. Use [[toCompressedJSON]]
|
|
18
|
-
*/
|
|
19
|
-
// istanbul ignore next
|
|
20
|
-
function toJSON(prop) {
|
|
21
|
-
return { ...prop };
|
|
22
|
-
}
|
|
23
|
-
Property.toJSON = toJSON;
|
|
24
15
|
/** Serialize [[Property]] to compressed JSON */
|
|
25
16
|
function toCompressedJSON(prop, classesMap) {
|
|
26
17
|
return {
|
|
@@ -28,14 +19,5 @@ var Property;
|
|
|
28
19
|
};
|
|
29
20
|
}
|
|
30
21
|
Property.toCompressedJSON = toCompressedJSON;
|
|
31
|
-
/**
|
|
32
|
-
* Deserializes [[Property]] from JSON
|
|
33
|
-
* @deprecated in 3.x. Use [[Property]]
|
|
34
|
-
*/
|
|
35
|
-
// istanbul ignore next
|
|
36
|
-
function fromJSON(json) {
|
|
37
|
-
return { ...json };
|
|
38
|
-
}
|
|
39
|
-
Property.fromJSON = fromJSON;
|
|
40
22
|
})(Property || (exports.Property = Property = {}));
|
|
41
23
|
//# sourceMappingURL=Property.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Property.js","sourceRoot":"","sources":["../../../../src/presentation-common/content/Property.ts"],"names":[],"mappings":";AAAA;;;gGAGgG;AAChG;;GAEG;;;AAEH,
|
|
1
|
+
{"version":3,"file":"Property.js","sourceRoot":"","sources":["../../../../src/presentation-common/content/Property.ts"],"names":[],"mappings":";AAAA;;;gGAGgG;AAChG;;GAEG;;;AAEH,8BAA2F;AAkC3F,cAAc;AACd,IAAiB,QAAQ,CAOxB;AAPD,WAAiB,QAAQ;IACvB,gDAAgD;IAChD,SAAgB,gBAAgB,CAAC,IAAc,EAAE,UAAqD;QACpG,OAAO;YACL,QAAQ,EAAE,iBAAY,CAAC,gBAAgB,CAAC,IAAI,CAAC,QAAQ,EAAE,UAAU,CAAC;SACnE,CAAC;IACJ,CAAC;IAJe,yBAAgB,mBAI/B,CAAA;AACH,CAAC,EAPgB,QAAQ,wBAAR,QAAQ,QAOxB","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Content\n */\n\nimport { ClassInfo, CompressedClassInfoJSON, PropertyInfo, PropertyInfoJSON } from \"../EC\";\n\n/**\n * Data structure that describes one step of property\n * accessor path.\n *\n * @public\n */\nexport interface PropertyAccessor {\n /** Name of ECProperty */\n propertyName: string;\n /** If the property is an array, array index. Otherwise undefined. */\n arrayIndex?: number;\n}\n\n/**\n * Describes path to a property.\n * @public\n */\nexport type PropertyAccessorPath = PropertyAccessor[];\n\n/**\n * Data structure that describes a single ECProperty that's\n * included in a [[PropertiesField]].\n *\n * TODO: Remove?\n *\n * @public\n */\nexport interface Property {\n /** ECProperty information */\n property: PropertyInfo;\n}\n\n/** @public */\nexport namespace Property {\n /** Serialize [[Property]] to compressed JSON */\n export function toCompressedJSON(prop: Property, classesMap: { [id: string]: CompressedClassInfoJSON }): PropertyJSON<string> {\n return {\n property: PropertyInfo.toCompressedJSON(prop.property, classesMap),\n };\n }\n}\n\n/**\n * JSON representation of [[Property]]\n * @public\n */\nexport interface PropertyJSON<TClassInfoJSON = ClassInfo> {\n property: PropertyInfoJSON<TClassInfoJSON>;\n}\n"]}
|
|
@@ -13,6 +13,8 @@ const Content_1 = require("./Content");
|
|
|
13
13
|
const Value_1 = require("./Value");
|
|
14
14
|
/** @internal */
|
|
15
15
|
class ContentFormatter {
|
|
16
|
+
_propertyValueFormatter;
|
|
17
|
+
_unitSystem;
|
|
16
18
|
constructor(_propertyValueFormatter, _unitSystem) {
|
|
17
19
|
this._propertyValueFormatter = _propertyValueFormatter;
|
|
18
20
|
this._unitSystem = _unitSystem;
|
|
@@ -83,6 +85,7 @@ class ContentFormatter {
|
|
|
83
85
|
exports.ContentFormatter = ContentFormatter;
|
|
84
86
|
/** @internal */
|
|
85
87
|
class ContentPropertyValueFormatter {
|
|
88
|
+
_koqValueFormatter;
|
|
86
89
|
constructor(_koqValueFormatter) {
|
|
87
90
|
this._koqValueFormatter = _koqValueFormatter;
|
|
88
91
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PropertyValueFormatter.js","sourceRoot":"","sources":["../../../../src/presentation-common/content/PropertyValueFormatter.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Content\n */\n\nimport { assert } from \"@itwin/core-bentley\";\nimport { UnitSystemKey } from \"@itwin/core-quantity\";\nimport { KindOfQuantityInfo, PropertyInfo } from \"../EC\";\nimport { KoqPropertyValueFormatter } from \"../KoqPropertyValueFormatter\";\nimport { ValuesDictionary } from \"../Utils\";\nimport { Content } from \"./Content\";\nimport { Descriptor } from \"./Descriptor\";\nimport { ArrayPropertiesField, Field, PropertiesField, StructPropertiesField } from \"./Fields\";\nimport { Item } from \"./Item\";\nimport { DisplayValue, DisplayValuesMap, NestedContentValue, Value, ValuesArray, ValuesMap } from \"./Value\";\n\n/** @internal */\nexport class ContentFormatter {\n constructor(\n private _propertyValueFormatter: { formatPropertyValue: (field: Field, value: Value, unitSystem?: UnitSystemKey) => Promise<DisplayValue> },\n private _unitSystem?: UnitSystemKey,\n ) {}\n\n public async formatContent(content: Content) {\n const formattedItems = await this.formatContentItems(content.contentSet, content.descriptor);\n return new Content(content.descriptor, formattedItems);\n }\n\n public async formatContentItems(items: Item[], descriptor: Descriptor) {\n return Promise.all(\n items.map(async (item) => {\n await this.formatValues(item.values, item.displayValues, descriptor.fields, item.mergedFieldNames);\n return item;\n }),\n );\n }\n\n private async formatValues(values: ValuesDictionary<Value>, displayValues: ValuesDictionary<DisplayValue>, fields: Field[], mergedFields: string[]) {\n for (const field of fields) {\n const value = values[field.name];\n\n // format display value of merged values\n if (mergedFields.includes(field.name)) {\n displayValues[field.name] = \"@Presentation:label.varies@\";\n continue;\n }\n\n // do not add undefined value to display values\n if (value === undefined) {\n continue;\n }\n\n // format display values of nested content field\n if (field.isNestedContentField()) {\n assert(Value.isNestedContent(value));\n await this.formatNestedContentDisplayValues(value, field.nestedFields);\n continue;\n }\n\n // format property items\n if (field.isPropertiesField()) {\n displayValues[field.name] = await this.formatPropertyValue(value, field);\n continue;\n }\n\n displayValues[field.name] = await this._propertyValueFormatter.formatPropertyValue(field, value, this._unitSystem);\n }\n }\n\n private async formatNestedContentDisplayValues(nestedValues: NestedContentValue[], fields: Field[]) {\n for (const nestedValue of nestedValues) {\n await this.formatValues(nestedValue.values, nestedValue.displayValues, fields, nestedValue.mergedFieldNames);\n }\n }\n\n private async formatPropertyValue(value: Value, field: PropertiesField): Promise<DisplayValue> {\n if (field.isArrayPropertiesField()) {\n assert(Value.isArray(value));\n return this.formatArrayItems(value, field);\n }\n if (field.isStructPropertiesField()) {\n assert(Value.isMap(value));\n return this.formatStructMembers(value, field);\n }\n return this._propertyValueFormatter.formatPropertyValue(field, value, this._unitSystem);\n }\n\n private async formatArrayItems(itemValues: ValuesArray, field: ArrayPropertiesField) {\n return Promise.all(itemValues.map(async (value) => this.formatPropertyValue(value, field.itemsField)));\n }\n\n private async formatStructMembers(memberValues: ValuesMap, field: StructPropertiesField) {\n const displayValues: DisplayValuesMap = {};\n await Promise.all(\n field.memberFields.map(async (memberField) => {\n displayValues[memberField.name] = await this.formatPropertyValue(memberValues[memberField.name], memberField);\n }),\n );\n return displayValues;\n }\n}\n\n/** @internal */\nexport class ContentPropertyValueFormatter {\n constructor(private _koqValueFormatter: KoqPropertyValueFormatter) {}\n\n public async formatPropertyValue(field: Field, value: Value, unitSystem?: UnitSystemKey): Promise<DisplayValue> {\n const doubleFormatter = isFieldWithKoq(field)\n ? async (rawValue: number) => {\n const koq = field.properties[0].property.kindOfQuantity;\n const formattedValue = await this._koqValueFormatter.format(rawValue, { koqName: koq.name, unitSystem });\n if (formattedValue !== undefined) {\n return formattedValue;\n }\n return formatDouble(rawValue);\n }\n : async (rawValue: number) => formatDouble(rawValue);\n\n return this.formatValue(field, value, { doubleFormatter });\n }\n\n private async formatValue(field: Field, value: Value, ctx?: { doubleFormatter: (raw: number) => Promise<string> }): Promise<DisplayValue> {\n if (field.isPropertiesField()) {\n if (field.isArrayPropertiesField()) {\n return this.formatArrayValue(field, value);\n }\n\n if (field.isStructPropertiesField()) {\n return this.formatStructValue(field, value);\n }\n }\n\n return this.formatPrimitiveValue(field, value, ctx);\n }\n\n private async formatPrimitiveValue(field: Field, value: Value, ctx?: { doubleFormatter: (raw: number) => Promise<string> }) {\n if (value === undefined) {\n return \"\";\n }\n\n const formatDoubleValue = async (raw: number) => (ctx ? ctx.doubleFormatter(raw) : formatDouble(raw));\n\n if (field.type.typeName === \"point2d\" && isPoint2d(value)) {\n return `X: ${await formatDoubleValue(value.x)}; Y: ${await formatDoubleValue(value.y)}`;\n }\n if (field.type.typeName === \"point3d\" && isPoint3d(value)) {\n return `X: ${await formatDoubleValue(value.x)}; Y: ${await formatDoubleValue(value.y)}; Z: ${await formatDoubleValue(value.z)}`;\n }\n if (field.type.typeName === \"dateTime\") {\n assert(typeof value === \"string\");\n return value;\n }\n if (field.type.typeName === \"bool\" || field.type.typeName === \"boolean\") {\n assert(typeof value === \"boolean\");\n return value ? \"@Presentation:value.true@\" : \"@Presentation:value.false@\";\n }\n if (field.type.typeName === \"int\" || field.type.typeName === \"long\") {\n assert(isNumber(value));\n return value.toFixed(0);\n }\n if (field.type.typeName === \"double\") {\n assert(isNumber(value));\n return formatDoubleValue(value);\n }\n if (field.type.typeName === \"navigation\") {\n assert(Value.isNavigationValue(value));\n return value.label.displayValue;\n }\n\n if (field.type.typeName === \"enum\" && field.isPropertiesField()) {\n const defaultValue = !field.properties[0].property.enumerationInfo?.isStrict\n ? value.toString() // eslint-disable-line @typescript-eslint/no-base-to-string\n : undefined;\n\n return field.properties[0].property.enumerationInfo?.choices.find(({ value: enumValue }) => enumValue === value)?.label ?? defaultValue;\n }\n // eslint-disable-next-line @typescript-eslint/no-base-to-string\n return value.toString();\n }\n\n private async formatStructValue(field: StructPropertiesField, value: Value) {\n if (!Value.isMap(value)) {\n return {};\n }\n\n const formattedMember: DisplayValuesMap = {};\n for (const member of field.memberFields) {\n formattedMember[member.name] = await this.formatValue(member, value[member.name]);\n }\n return formattedMember;\n }\n\n private async formatArrayValue(field: ArrayPropertiesField, value: Value) {\n if (!Value.isArray(value)) {\n return [];\n }\n\n return Promise.all(\n value.map(async (arrayVal) => {\n return this.formatValue(field.itemsField, arrayVal);\n }),\n );\n }\n}\n\nfunction formatDouble(value: number) {\n return value.toFixed(2);\n}\n\ntype FieldWithKoq = PropertiesField & {\n properties: [\n {\n property: PropertyInfo & {\n kindOfQuantity: KindOfQuantityInfo;\n };\n },\n ];\n};\n\nfunction isFieldWithKoq(field: Field): field is FieldWithKoq {\n return field.isPropertiesField() && field.properties.length > 0 && field.properties[0].property.kindOfQuantity !== undefined;\n}\n\nfunction isPoint2d(obj: Value): obj is { x: number; y: number } {\n return obj !== undefined && isNumber((obj as any).x) && isNumber((obj as any).y);\n}\n\nfunction isPoint3d(obj: Value): obj is { x: number; y: number; z: number } {\n return isPoint2d(obj) && isNumber((obj as any).z);\n}\n\nfunction isNumber(obj: Value): obj is number {\n return !isNaN(Number(obj));\n}\n"]}
|
|
1
|
+
{"version":3,"file":"PropertyValueFormatter.js","sourceRoot":"","sources":["../../../../src/presentation-common/content/PropertyValueFormatter.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Content\n */\n\nimport { assert } from \"@itwin/core-bentley\";\nimport { UnitSystemKey } from \"@itwin/core-quantity\";\nimport { KindOfQuantityInfo, PropertyInfo } from \"../EC\";\nimport { KoqPropertyValueFormatter } from \"../KoqPropertyValueFormatter\";\nimport { ValuesDictionary } from \"../Utils\";\nimport { Content } from \"./Content\";\nimport { Descriptor } from \"./Descriptor\";\nimport { ArrayPropertiesField, Field, PropertiesField, StructPropertiesField } from \"./Fields\";\nimport { Item } from \"./Item\";\nimport { DisplayValue, DisplayValuesMap, NestedContentValue, Value, ValuesArray, ValuesMap } from \"./Value\";\n\n/** @internal */\nexport class ContentFormatter {\n constructor(\n private _propertyValueFormatter: { formatPropertyValue: (field: Field, value: Value, unitSystem?: UnitSystemKey) => Promise<DisplayValue> },\n private _unitSystem?: UnitSystemKey,\n ) {}\n\n public async formatContent(content: Content) {\n const formattedItems = await this.formatContentItems(content.contentSet, content.descriptor);\n return new Content(content.descriptor, formattedItems);\n }\n\n public async formatContentItems(items: Item[], descriptor: Descriptor) {\n return Promise.all(\n items.map(async (item) => {\n await this.formatValues(item.values, item.displayValues, descriptor.fields, item.mergedFieldNames);\n return item;\n }),\n );\n }\n\n private async formatValues(values: ValuesDictionary<Value>, displayValues: ValuesDictionary<DisplayValue>, fields: Field[], mergedFields: string[]) {\n for (const field of fields) {\n const value = values[field.name];\n\n // format display value of merged values\n if (mergedFields.includes(field.name)) {\n displayValues[field.name] = \"@Presentation:label.varies@\";\n continue;\n }\n\n // do not add undefined value to display values\n if (value === undefined) {\n continue;\n }\n\n // format display values of nested content field\n if (field.isNestedContentField()) {\n assert(Value.isNestedContent(value));\n await this.formatNestedContentDisplayValues(value, field.nestedFields);\n continue;\n }\n\n // format property items\n if (field.isPropertiesField()) {\n displayValues[field.name] = await this.formatPropertyValue(value, field);\n continue;\n }\n\n displayValues[field.name] = await this._propertyValueFormatter.formatPropertyValue(field, value, this._unitSystem);\n }\n }\n\n private async formatNestedContentDisplayValues(nestedValues: NestedContentValue[], fields: Field[]) {\n for (const nestedValue of nestedValues) {\n await this.formatValues(nestedValue.values, nestedValue.displayValues, fields, nestedValue.mergedFieldNames);\n }\n }\n\n private async formatPropertyValue(value: Value, field: PropertiesField): Promise<DisplayValue> {\n if (field.isArrayPropertiesField()) {\n assert(Value.isArray(value));\n return this.formatArrayItems(value, field);\n }\n if (field.isStructPropertiesField()) {\n assert(Value.isMap(value));\n return this.formatStructMembers(value, field);\n }\n return this._propertyValueFormatter.formatPropertyValue(field, value, this._unitSystem);\n }\n\n private async formatArrayItems(itemValues: ValuesArray, field: ArrayPropertiesField) {\n return Promise.all(itemValues.map(async (value) => this.formatPropertyValue(value, field.itemsField)));\n }\n\n private async formatStructMembers(memberValues: ValuesMap, field: StructPropertiesField) {\n const displayValues: DisplayValuesMap = {};\n await Promise.all(\n field.memberFields.map(async (memberField) => {\n displayValues[memberField.name] = await this.formatPropertyValue(memberValues[memberField.name], memberField);\n }),\n );\n return displayValues;\n }\n}\n\n/** @internal */\nexport class ContentPropertyValueFormatter {\n constructor(private _koqValueFormatter: KoqPropertyValueFormatter) {}\n\n public async formatPropertyValue(field: Field, value: Value, unitSystem?: UnitSystemKey): Promise<DisplayValue> {\n const doubleFormatter = isFieldWithKoq(field)\n ? async (rawValue: number) => {\n const koq = field.properties[0].property.kindOfQuantity;\n const formattedValue = await this._koqValueFormatter.format(rawValue, { koqName: koq.name, unitSystem });\n if (formattedValue !== undefined) {\n return formattedValue;\n }\n return formatDouble(rawValue);\n }\n : async (rawValue: number) => formatDouble(rawValue);\n\n return this.formatValue(field, value, { doubleFormatter });\n }\n\n private async formatValue(field: Field, value: Value, ctx?: { doubleFormatter: (raw: number) => Promise<string> }): Promise<DisplayValue> {\n if (field.isPropertiesField()) {\n if (field.isArrayPropertiesField()) {\n return this.formatArrayValue(field, value);\n }\n\n if (field.isStructPropertiesField()) {\n return this.formatStructValue(field, value);\n }\n }\n\n return this.formatPrimitiveValue(field, value, ctx);\n }\n\n private async formatPrimitiveValue(field: Field, value: Value, ctx?: { doubleFormatter: (raw: number) => Promise<string> }) {\n if (value === undefined) {\n return \"\";\n }\n\n const formatDoubleValue = async (raw: number) => (ctx ? ctx.doubleFormatter(raw) : formatDouble(raw));\n\n if (field.type.typeName === \"point2d\" && isPoint2d(value)) {\n return `X: ${await formatDoubleValue(value.x)}; Y: ${await formatDoubleValue(value.y)}`;\n }\n if (field.type.typeName === \"point3d\" && isPoint3d(value)) {\n return `X: ${await formatDoubleValue(value.x)}; Y: ${await formatDoubleValue(value.y)}; Z: ${await formatDoubleValue(value.z)}`;\n }\n if (field.type.typeName === \"dateTime\") {\n assert(typeof value === \"string\");\n return value;\n }\n if (field.type.typeName === \"bool\" || field.type.typeName === \"boolean\") {\n assert(typeof value === \"boolean\");\n return value ? \"@Presentation:value.true@\" : \"@Presentation:value.false@\";\n }\n if (field.type.typeName === \"int\" || field.type.typeName === \"long\") {\n assert(isNumber(value));\n return value.toFixed(0);\n }\n if (field.type.typeName === \"double\") {\n assert(isNumber(value));\n return formatDoubleValue(value);\n }\n if (field.type.typeName === \"navigation\") {\n assert(Value.isNavigationValue(value));\n return value.label.displayValue;\n }\n\n if (field.type.typeName === \"enum\" && field.isPropertiesField()) {\n const defaultValue = !field.properties[0].property.enumerationInfo?.isStrict\n ? value.toString() // eslint-disable-line @typescript-eslint/no-base-to-string\n : undefined;\n\n return field.properties[0].property.enumerationInfo?.choices.find(({ value: enumValue }) => enumValue === value)?.label ?? defaultValue;\n }\n // eslint-disable-next-line @typescript-eslint/no-base-to-string\n return value.toString();\n }\n\n private async formatStructValue(field: StructPropertiesField, value: Value) {\n if (!Value.isMap(value)) {\n return {};\n }\n\n const formattedMember: DisplayValuesMap = {};\n for (const member of field.memberFields) {\n formattedMember[member.name] = await this.formatValue(member, value[member.name]);\n }\n return formattedMember;\n }\n\n private async formatArrayValue(field: ArrayPropertiesField, value: Value) {\n if (!Value.isArray(value)) {\n return [];\n }\n\n return Promise.all(\n value.map(async (arrayVal) => {\n return this.formatValue(field.itemsField, arrayVal);\n }),\n );\n }\n}\n\nfunction formatDouble(value: number) {\n return value.toFixed(2);\n}\n\ntype FieldWithKoq = PropertiesField & {\n properties: [\n {\n property: PropertyInfo & {\n kindOfQuantity: KindOfQuantityInfo;\n };\n },\n ];\n};\n\nfunction isFieldWithKoq(field: Field): field is FieldWithKoq {\n return field.isPropertiesField() && field.properties.length > 0 && field.properties[0].property.kindOfQuantity !== undefined;\n}\n\nfunction isPoint2d(obj: Value): obj is { x: number; y: number } {\n return obj !== undefined && isNumber((obj as any).x) && isNumber((obj as any).y);\n}\n\nfunction isPoint3d(obj: Value): obj is { x: number; y: number; z: number } {\n return isPoint2d(obj) && isNumber((obj as any).z);\n}\n\nfunction isNumber(obj: Value): obj is number {\n return !isNaN(Number(obj));\n}\n"]}
|
|
@@ -21,16 +21,6 @@ export declare namespace Value {
|
|
|
21
21
|
function isNestedContent(value: Value): value is NestedContentValue[];
|
|
22
22
|
/** Is the value a navigation value */
|
|
23
23
|
function isNavigationValue(value: Value): value is NavigationPropertyValue;
|
|
24
|
-
/**
|
|
25
|
-
* Serialize [[Value]] to JSON
|
|
26
|
-
* @deprecated in 3.x. Use [[Value]]
|
|
27
|
-
*/
|
|
28
|
-
function fromJSON(json: ValueJSON): Value;
|
|
29
|
-
/**
|
|
30
|
-
* Deserialize [[Value]] from JSON
|
|
31
|
-
* @deprecated in 3.x. Use [[Value]]
|
|
32
|
-
*/
|
|
33
|
-
function toJSON(value: Value): ValueJSON;
|
|
34
24
|
}
|
|
35
25
|
/**
|
|
36
26
|
* A map of raw values
|
|
@@ -57,16 +47,6 @@ export declare namespace DisplayValue {
|
|
|
57
47
|
function isArray(value: DisplayValue): value is DisplayValuesArray;
|
|
58
48
|
/** Is the value a map / struct */
|
|
59
49
|
function isMap(value: DisplayValue): value is DisplayValuesMap;
|
|
60
|
-
/**
|
|
61
|
-
* Serialize [[DisplayValue]] to JSON
|
|
62
|
-
* @deprecated in 3.x. Use [[DisplayValue]]
|
|
63
|
-
*/
|
|
64
|
-
function fromJSON(json: DisplayValueJSON): DisplayValue;
|
|
65
|
-
/**
|
|
66
|
-
* Deserialize [[DisplayValue]] from JSON
|
|
67
|
-
* @deprecated in 3.x. Use [[DisplayValue]]
|
|
68
|
-
*/
|
|
69
|
-
function toJSON(value: DisplayValue): DisplayValueJSON;
|
|
70
50
|
}
|
|
71
51
|
/**
|
|
72
52
|
* A map of display values
|
|
@@ -93,8 +73,12 @@ export interface NestedContentValue {
|
|
|
93
73
|
displayValues: ValuesDictionary<DisplayValue>;
|
|
94
74
|
/** Names of fields whose values are merged */
|
|
95
75
|
mergedFieldNames: string[];
|
|
96
|
-
/**
|
|
76
|
+
/**
|
|
77
|
+
* Label of the ECInstance that this `NestedContentValue` is based on.
|
|
78
|
+
* @deprecated in 5.x. Use [[label]] instead.
|
|
79
|
+
*/
|
|
97
80
|
labelDefinition?: LabelDefinition;
|
|
81
|
+
label?: LabelDefinition;
|
|
98
82
|
}
|
|
99
83
|
/**
|
|
100
84
|
* Data structure that describes value of the navigation property.
|
|
@@ -108,70 +92,6 @@ export interface NavigationPropertyValue {
|
|
|
108
92
|
/** Id of target instance. */
|
|
109
93
|
id: InstanceId;
|
|
110
94
|
}
|
|
111
|
-
/** @public */
|
|
112
|
-
export declare namespace NestedContentValue {
|
|
113
|
-
/**
|
|
114
|
-
* Serialize [[NestedContentValue]] to JSON
|
|
115
|
-
* @deprecated in 3.x. Use [[NestedContentValue]]
|
|
116
|
-
*/
|
|
117
|
-
function toJSON(value: NestedContentValue): NestedContentValueJSON;
|
|
118
|
-
/**
|
|
119
|
-
* Deserialize [[NestedContentValue]] from JSON
|
|
120
|
-
* @deprecated in 3.x. Use [[NestedContentValue]]
|
|
121
|
-
*/
|
|
122
|
-
function fromJSON(json: NestedContentValueJSON): NestedContentValue;
|
|
123
|
-
}
|
|
124
|
-
/**
|
|
125
|
-
* JSON representation of [[Value]]
|
|
126
|
-
* @public
|
|
127
|
-
* @deprecated in 3.x. Use [[Value]]
|
|
128
|
-
*/
|
|
129
|
-
export type ValueJSON = string | number | boolean | null | ValuesMapJSON | ValuesArrayJSON | NavigationPropertyValue | NestedContentValueJSON[];
|
|
130
|
-
/**
|
|
131
|
-
* JSON representation of [[ValuesMap]]
|
|
132
|
-
* @public
|
|
133
|
-
* @deprecated in 3.x. Use [[ValuesMap]]
|
|
134
|
-
*/
|
|
135
|
-
export interface ValuesMapJSON extends ValuesDictionary<ValueJSON> {
|
|
136
|
-
}
|
|
137
|
-
/**
|
|
138
|
-
* JSON representation of [[ValuesArray]]
|
|
139
|
-
* @public
|
|
140
|
-
* @deprecated in 3.x. Use [[ValuesArray]]
|
|
141
|
-
*/
|
|
142
|
-
export interface ValuesArrayJSON extends Array<ValueJSON> {
|
|
143
|
-
}
|
|
144
|
-
/**
|
|
145
|
-
* JSON representation of [[DisplayValue]]
|
|
146
|
-
* @public
|
|
147
|
-
* @deprecated in 3.x. Use [[DisplayValue]]
|
|
148
|
-
*/
|
|
149
|
-
export type DisplayValueJSON = string | null | DisplayValuesMapJSON | DisplayValuesArrayJSON;
|
|
150
|
-
/**
|
|
151
|
-
* JSON representation of [[DisplayValuesMap]]
|
|
152
|
-
* @public
|
|
153
|
-
* @deprecated in 3.x. Use [[DisplayValuesMap]]
|
|
154
|
-
*/
|
|
155
|
-
export interface DisplayValuesMapJSON extends ValuesDictionary<DisplayValueJSON> {
|
|
156
|
-
}
|
|
157
|
-
/**
|
|
158
|
-
* JSON representation of [[DisplayValuesArray]]
|
|
159
|
-
* @public
|
|
160
|
-
* @deprecated in 3.x. Use [[DisplayValuesArray]]
|
|
161
|
-
*/
|
|
162
|
-
export interface DisplayValuesArrayJSON extends Array<DisplayValueJSON> {
|
|
163
|
-
}
|
|
164
|
-
/**
|
|
165
|
-
* JSON representation of [[NestedContentValue]]
|
|
166
|
-
* @public
|
|
167
|
-
* @deprecated in 3.x. Use [[NestedContentValue]]
|
|
168
|
-
*/
|
|
169
|
-
export interface NestedContentValueJSON {
|
|
170
|
-
primaryKeys: InstanceKey[];
|
|
171
|
-
values: ValuesDictionary<ValueJSON>;
|
|
172
|
-
displayValues: ValuesDictionary<DisplayValueJSON>;
|
|
173
|
-
mergedFieldNames: string[];
|
|
174
|
-
}
|
|
175
95
|
/**
|
|
176
96
|
* A group of raw values and their common display value.
|
|
177
97
|
* @public
|
|
@@ -182,26 +102,4 @@ export interface DisplayValueGroup {
|
|
|
182
102
|
/** A list of grouped raw values */
|
|
183
103
|
groupedRawValues: Value[];
|
|
184
104
|
}
|
|
185
|
-
/**
|
|
186
|
-
* JSON representation of [[DisplayValueGroup]].
|
|
187
|
-
* @public
|
|
188
|
-
* @deprecated in 3.x. Use [[DisplayValueGroup]]
|
|
189
|
-
*/
|
|
190
|
-
export interface DisplayValueGroupJSON {
|
|
191
|
-
displayValue: DisplayValueJSON;
|
|
192
|
-
groupedRawValues: ValueJSON[];
|
|
193
|
-
}
|
|
194
|
-
/** @public */
|
|
195
|
-
export declare namespace DisplayValueGroup {
|
|
196
|
-
/**
|
|
197
|
-
* Serialize [[DisplayValueGroup]] to JSON
|
|
198
|
-
* @deprecated in 3.x. Use [[DisplayValueGroup]]
|
|
199
|
-
*/
|
|
200
|
-
function toJSON(group: DisplayValueGroup): DisplayValueGroupJSON;
|
|
201
|
-
/**
|
|
202
|
-
* Deserialize [[DisplayValueGroup]] from JSON
|
|
203
|
-
* @deprecated in 3.x. Use [[DisplayValueGroup]]
|
|
204
|
-
*/
|
|
205
|
-
function fromJSON(json: DisplayValueGroupJSON): DisplayValueGroup;
|
|
206
|
-
}
|
|
207
105
|
//# sourceMappingURL=Value.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Value.d.ts","sourceRoot":"","sources":["../../../../src/presentation-common/content/Value.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAE5C;;;GAGG;AACH,MAAM,MAAM,KAAK,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,GAAG,SAAS,GAAG,WAAW,GAAG,uBAAuB,GAAG,kBAAkB,EAAE,CAAC;AAErI,cAAc;AAEd,yBAAiB,KAAK,CAAC;IACrB,+BAA+B;IAC/B,SAAgB,WAAW,CAAC,KAAK,EAAE,KAAK,GAAG,KAAK,IAAI,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,CAExF;IAED,4BAA4B;IAC5B,SAAgB,OAAO,CAAC,KAAK,EAAE,KAAK,GAAG,KAAK,IAAI,WAAW,CAE1D;IAED,kCAAkC;IAClC,SAAgB,KAAK,CAAC,KAAK,EAAE,KAAK,GAAG,KAAK,IAAI,SAAS,CAEtD;IAED,0CAA0C;IAC1C,SAAgB,eAAe,CAAC,KAAK,EAAE,KAAK,GAAG,KAAK,IAAI,kBAAkB,EAAE,CAE3E;IAED,sCAAsC;IACtC,SAAgB,iBAAiB,CAAC,KAAK,EAAE,KAAK,GAAG,KAAK,IAAI,uBAAuB,CAOhF;
|
|
1
|
+
{"version":3,"file":"Value.d.ts","sourceRoot":"","sources":["../../../../src/presentation-common/content/Value.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAE5C;;;GAGG;AACH,MAAM,MAAM,KAAK,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,GAAG,SAAS,GAAG,WAAW,GAAG,uBAAuB,GAAG,kBAAkB,EAAE,CAAC;AAErI,cAAc;AAEd,yBAAiB,KAAK,CAAC;IACrB,+BAA+B;IAC/B,SAAgB,WAAW,CAAC,KAAK,EAAE,KAAK,GAAG,KAAK,IAAI,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,CAExF;IAED,4BAA4B;IAC5B,SAAgB,OAAO,CAAC,KAAK,EAAE,KAAK,GAAG,KAAK,IAAI,WAAW,CAE1D;IAED,kCAAkC;IAClC,SAAgB,KAAK,CAAC,KAAK,EAAE,KAAK,GAAG,KAAK,IAAI,SAAS,CAEtD;IAED,0CAA0C;IAC1C,SAAgB,eAAe,CAAC,KAAK,EAAE,KAAK,GAAG,KAAK,IAAI,kBAAkB,EAAE,CAE3E;IAED,sCAAsC;IACtC,SAAgB,iBAAiB,CAAC,KAAK,EAAE,KAAK,GAAG,KAAK,IAAI,uBAAuB,CAOhF;CACF;AAED;;;GAGG;AACH,MAAM,WAAW,SAAU,SAAQ,gBAAgB,CAAC,KAAK,CAAC;CAAG;AAE7D;;;GAGG;AACH,MAAM,WAAW,WAAY,SAAQ,KAAK,CAAC,KAAK,CAAC;CAAG;AAEpD;;;GAGG;AACH,MAAM,MAAM,YAAY,GAAG,MAAM,GAAG,SAAS,GAAG,gBAAgB,GAAG,kBAAkB,CAAC;AAEtF,cAAc;AAEd,yBAAiB,YAAY,CAAC;IAC5B,+BAA+B;IAC/B,SAAgB,WAAW,CAAC,KAAK,EAAE,YAAY,GAAG,KAAK,IAAI,MAAM,GAAG,SAAS,CAE5E;IAED,4BAA4B;IAC5B,SAAgB,OAAO,CAAC,KAAK,EAAE,YAAY,GAAG,KAAK,IAAI,kBAAkB,CAExE;IAED,kCAAkC;IAClC,SAAgB,KAAK,CAAC,KAAK,EAAE,YAAY,GAAG,KAAK,IAAI,gBAAgB,CAEpE;CACF;AAED;;;GAGG;AACH,MAAM,WAAW,gBAAiB,SAAQ,gBAAgB,CAAC,YAAY,CAAC;CAAG;AAE3E;;;GAGG;AACH,MAAM,WAAW,kBAAmB,SAAQ,KAAK,CAAC,YAAY,CAAC;CAAG;AAElE;;;GAGG;AACH,MAAM,WAAW,kBAAkB;IACjC,iEAAiE;IACjE,WAAW,EAAE,WAAW,EAAE,CAAC;IAC3B,yBAAyB;IACzB,MAAM,EAAE,gBAAgB,CAAC,KAAK,CAAC,CAAC;IAChC,iCAAiC;IACjC,aAAa,EAAE,gBAAgB,CAAC,YAAY,CAAC,CAAC;IAC9C,8CAA8C;IAC9C,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAC3B;;;OAGG;IACH,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC,KAAK,CAAC,EAAE,eAAe,CAAC;CACzB;AAED;;;GAGG;AACH,MAAM,WAAW,uBAAuB;IACtC,gCAAgC;IAChC,KAAK,EAAE,eAAe,CAAC;IACvB,0EAA0E;IAC1E,SAAS,EAAE,MAAM,CAAC;IAClB,6BAA6B;IAC7B,EAAE,EAAE,UAAU,CAAC;CAChB;AAED;;;GAGG;AACH,MAAM,WAAW,iBAAiB;IAChC,sDAAsD;IACtD,YAAY,EAAE,YAAY,CAAC;IAC3B,mCAAmC;IACnC,gBAAgB,EAAE,KAAK,EAAE,CAAC;CAC3B"}
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
* @module Content
|
|
8
8
|
*/
|
|
9
9
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
-
exports.
|
|
10
|
+
exports.DisplayValue = exports.Value = void 0;
|
|
11
11
|
/** @public */
|
|
12
12
|
// eslint-disable-next-line @typescript-eslint/no-redeclare
|
|
13
13
|
var Value;
|
|
@@ -40,50 +40,6 @@ var Value;
|
|
|
40
40
|
value.label !== undefined);
|
|
41
41
|
}
|
|
42
42
|
Value.isNavigationValue = isNavigationValue;
|
|
43
|
-
/**
|
|
44
|
-
* Serialize [[Value]] to JSON
|
|
45
|
-
* @deprecated in 3.x. Use [[Value]]
|
|
46
|
-
*/
|
|
47
|
-
// eslint-disable-next-line @typescript-eslint/no-deprecated
|
|
48
|
-
function fromJSON(json) {
|
|
49
|
-
if (json === null) {
|
|
50
|
-
return undefined;
|
|
51
|
-
}
|
|
52
|
-
if (isNestedContentValue(json)) {
|
|
53
|
-
// eslint-disable-next-line @typescript-eslint/no-deprecated
|
|
54
|
-
return json.map(NestedContentValue.fromJSON);
|
|
55
|
-
}
|
|
56
|
-
if (isArrayValue(json)) {
|
|
57
|
-
return valuesArrayFromJSON(json);
|
|
58
|
-
}
|
|
59
|
-
if (isMapValue(json)) {
|
|
60
|
-
return valuesMapFromJSON(json);
|
|
61
|
-
}
|
|
62
|
-
return json;
|
|
63
|
-
}
|
|
64
|
-
Value.fromJSON = fromJSON;
|
|
65
|
-
/**
|
|
66
|
-
* Deserialize [[Value]] from JSON
|
|
67
|
-
* @deprecated in 3.x. Use [[Value]]
|
|
68
|
-
*/
|
|
69
|
-
// eslint-disable-next-line @typescript-eslint/no-deprecated
|
|
70
|
-
function toJSON(value) {
|
|
71
|
-
if (undefined === value) {
|
|
72
|
-
return null;
|
|
73
|
-
}
|
|
74
|
-
if (isNestedContentValue(value)) {
|
|
75
|
-
// eslint-disable-next-line @typescript-eslint/no-deprecated
|
|
76
|
-
return value.map(NestedContentValue.toJSON);
|
|
77
|
-
}
|
|
78
|
-
if (isArrayValue(value)) {
|
|
79
|
-
return valuesArrayToJSON(value);
|
|
80
|
-
}
|
|
81
|
-
if (isMapValue(value)) {
|
|
82
|
-
return valuesMapToJSON(value);
|
|
83
|
-
}
|
|
84
|
-
return value;
|
|
85
|
-
}
|
|
86
|
-
Value.toJSON = toJSON;
|
|
87
43
|
})(Value || (exports.Value = Value = {}));
|
|
88
44
|
/** @public */
|
|
89
45
|
// eslint-disable-next-line @typescript-eslint/no-redeclare
|
|
@@ -104,106 +60,7 @@ var DisplayValue;
|
|
|
104
60
|
return isMapValue(value);
|
|
105
61
|
}
|
|
106
62
|
DisplayValue.isMap = isMap;
|
|
107
|
-
/**
|
|
108
|
-
* Serialize [[DisplayValue]] to JSON
|
|
109
|
-
* @deprecated in 3.x. Use [[DisplayValue]]
|
|
110
|
-
*/
|
|
111
|
-
// eslint-disable-next-line @typescript-eslint/no-deprecated
|
|
112
|
-
function fromJSON(json) {
|
|
113
|
-
if (json === null) {
|
|
114
|
-
return undefined;
|
|
115
|
-
}
|
|
116
|
-
if (isArrayValue(json)) {
|
|
117
|
-
return displayValuesArrayFromJSON(json);
|
|
118
|
-
}
|
|
119
|
-
if (isMapValue(json)) {
|
|
120
|
-
return displayValuesMapFromJSON(json);
|
|
121
|
-
}
|
|
122
|
-
return json;
|
|
123
|
-
}
|
|
124
|
-
DisplayValue.fromJSON = fromJSON;
|
|
125
|
-
/**
|
|
126
|
-
* Deserialize [[DisplayValue]] from JSON
|
|
127
|
-
* @deprecated in 3.x. Use [[DisplayValue]]
|
|
128
|
-
*/
|
|
129
|
-
// eslint-disable-next-line @typescript-eslint/no-deprecated
|
|
130
|
-
function toJSON(value) {
|
|
131
|
-
if (undefined === value) {
|
|
132
|
-
return null;
|
|
133
|
-
}
|
|
134
|
-
if (isArrayValue(value)) {
|
|
135
|
-
return displayValuesArrayToJSON(value);
|
|
136
|
-
}
|
|
137
|
-
if (isMapValue(value)) {
|
|
138
|
-
return displayValuesMapToJSON(value);
|
|
139
|
-
}
|
|
140
|
-
return value;
|
|
141
|
-
}
|
|
142
|
-
DisplayValue.toJSON = toJSON;
|
|
143
63
|
})(DisplayValue || (exports.DisplayValue = DisplayValue = {}));
|
|
144
|
-
/** @public */
|
|
145
|
-
var NestedContentValue;
|
|
146
|
-
(function (NestedContentValue) {
|
|
147
|
-
/**
|
|
148
|
-
* Serialize [[NestedContentValue]] to JSON
|
|
149
|
-
* @deprecated in 3.x. Use [[NestedContentValue]]
|
|
150
|
-
*/
|
|
151
|
-
// eslint-disable-next-line @typescript-eslint/no-deprecated
|
|
152
|
-
function toJSON(value) {
|
|
153
|
-
return {
|
|
154
|
-
...value,
|
|
155
|
-
values: valuesMapToJSON(value.values),
|
|
156
|
-
displayValues: displayValuesMapToJSON(value.displayValues),
|
|
157
|
-
};
|
|
158
|
-
}
|
|
159
|
-
NestedContentValue.toJSON = toJSON;
|
|
160
|
-
/**
|
|
161
|
-
* Deserialize [[NestedContentValue]] from JSON
|
|
162
|
-
* @deprecated in 3.x. Use [[NestedContentValue]]
|
|
163
|
-
*/
|
|
164
|
-
// eslint-disable-next-line @typescript-eslint/no-deprecated
|
|
165
|
-
function fromJSON(json) {
|
|
166
|
-
return {
|
|
167
|
-
...json,
|
|
168
|
-
values: valuesMapFromJSON(json.values),
|
|
169
|
-
displayValues: displayValuesMapFromJSON(json.displayValues),
|
|
170
|
-
};
|
|
171
|
-
}
|
|
172
|
-
NestedContentValue.fromJSON = fromJSON;
|
|
173
|
-
})(NestedContentValue || (exports.NestedContentValue = NestedContentValue = {}));
|
|
174
|
-
/** @public */
|
|
175
|
-
var DisplayValueGroup;
|
|
176
|
-
(function (DisplayValueGroup) {
|
|
177
|
-
/**
|
|
178
|
-
* Serialize [[DisplayValueGroup]] to JSON
|
|
179
|
-
* @deprecated in 3.x. Use [[DisplayValueGroup]]
|
|
180
|
-
*/
|
|
181
|
-
// eslint-disable-next-line @typescript-eslint/no-deprecated
|
|
182
|
-
function toJSON(group) {
|
|
183
|
-
return {
|
|
184
|
-
// eslint-disable-next-line @typescript-eslint/no-deprecated
|
|
185
|
-
displayValue: DisplayValue.toJSON(group.displayValue),
|
|
186
|
-
// eslint-disable-next-line @typescript-eslint/no-deprecated
|
|
187
|
-
groupedRawValues: group.groupedRawValues.map(Value.toJSON),
|
|
188
|
-
};
|
|
189
|
-
}
|
|
190
|
-
DisplayValueGroup.toJSON = toJSON;
|
|
191
|
-
/**
|
|
192
|
-
* Deserialize [[DisplayValueGroup]] from JSON
|
|
193
|
-
* @deprecated in 3.x. Use [[DisplayValueGroup]]
|
|
194
|
-
*/
|
|
195
|
-
// eslint-disable-next-line @typescript-eslint/no-deprecated
|
|
196
|
-
function fromJSON(json) {
|
|
197
|
-
return {
|
|
198
|
-
// eslint-disable-next-line @typescript-eslint/no-deprecated
|
|
199
|
-
displayValue: DisplayValue.fromJSON(json.displayValue),
|
|
200
|
-
// eslint-disable-next-line @typescript-eslint/no-deprecated
|
|
201
|
-
groupedRawValues: json.groupedRawValues.map(Value.fromJSON),
|
|
202
|
-
};
|
|
203
|
-
}
|
|
204
|
-
DisplayValueGroup.fromJSON = fromJSON;
|
|
205
|
-
})(DisplayValueGroup || (exports.DisplayValueGroup = DisplayValueGroup = {}));
|
|
206
|
-
// eslint-disable-next-line @typescript-eslint/no-deprecated
|
|
207
64
|
function isNestedContentValue(v) {
|
|
208
65
|
return (v !== undefined &&
|
|
209
66
|
Array.isArray(v) &&
|
|
@@ -219,81 +76,10 @@ function isArrayValue(v) {
|
|
|
219
76
|
// we have other means to determine the type of value.
|
|
220
77
|
return v !== undefined && Array.isArray(v);
|
|
221
78
|
}
|
|
222
|
-
// eslint-disable-next-line @typescript-eslint/no-deprecated
|
|
223
79
|
function isMapValue(v) {
|
|
224
80
|
return v !== undefined && typeof v === "object" && !Array.isArray(v);
|
|
225
81
|
}
|
|
226
82
|
function isPrimitiveValue(v) {
|
|
227
83
|
return !isArrayValue(v) && !isMapValue(v);
|
|
228
84
|
}
|
|
229
|
-
// eslint-disable-next-line @typescript-eslint/no-deprecated
|
|
230
|
-
function valuesArrayFromJSON(json) {
|
|
231
|
-
// eslint-disable-next-line @typescript-eslint/no-deprecated
|
|
232
|
-
return json.map(Value.fromJSON);
|
|
233
|
-
}
|
|
234
|
-
// eslint-disable-next-line @typescript-eslint/no-deprecated
|
|
235
|
-
function valuesArrayToJSON(values) {
|
|
236
|
-
// eslint-disable-next-line @typescript-eslint/no-deprecated
|
|
237
|
-
return values.map(Value.toJSON);
|
|
238
|
-
}
|
|
239
|
-
// eslint-disable-next-line @typescript-eslint/no-deprecated
|
|
240
|
-
function valuesMapFromJSON(json) {
|
|
241
|
-
const map = {};
|
|
242
|
-
for (const key in json) {
|
|
243
|
-
/* istanbul ignore else */
|
|
244
|
-
if (json.hasOwnProperty(key)) {
|
|
245
|
-
// eslint-disable-next-line @typescript-eslint/no-deprecated
|
|
246
|
-
map[key] = Value.fromJSON(json[key]);
|
|
247
|
-
}
|
|
248
|
-
}
|
|
249
|
-
return map;
|
|
250
|
-
}
|
|
251
|
-
// eslint-disable-next-line @typescript-eslint/no-deprecated
|
|
252
|
-
function valuesMapToJSON(values) {
|
|
253
|
-
// eslint-disable-next-line @typescript-eslint/no-deprecated
|
|
254
|
-
const map = {};
|
|
255
|
-
for (const key in values) {
|
|
256
|
-
/* istanbul ignore else */
|
|
257
|
-
if (values.hasOwnProperty(key)) {
|
|
258
|
-
// eslint-disable-next-line @typescript-eslint/no-deprecated
|
|
259
|
-
map[key] = Value.toJSON(values[key]);
|
|
260
|
-
}
|
|
261
|
-
}
|
|
262
|
-
return map;
|
|
263
|
-
}
|
|
264
|
-
// eslint-disable-next-line @typescript-eslint/no-deprecated
|
|
265
|
-
function displayValuesArrayFromJSON(json) {
|
|
266
|
-
// eslint-disable-next-line @typescript-eslint/no-deprecated
|
|
267
|
-
return json.map(DisplayValue.fromJSON);
|
|
268
|
-
}
|
|
269
|
-
// eslint-disable-next-line @typescript-eslint/no-deprecated
|
|
270
|
-
function displayValuesArrayToJSON(values) {
|
|
271
|
-
// eslint-disable-next-line @typescript-eslint/no-deprecated
|
|
272
|
-
return values.map(DisplayValue.toJSON);
|
|
273
|
-
}
|
|
274
|
-
// eslint-disable-next-line @typescript-eslint/no-deprecated
|
|
275
|
-
function displayValuesMapFromJSON(json) {
|
|
276
|
-
const map = {};
|
|
277
|
-
for (const key in json) {
|
|
278
|
-
/* istanbul ignore else */
|
|
279
|
-
if (json.hasOwnProperty(key)) {
|
|
280
|
-
// eslint-disable-next-line @typescript-eslint/no-deprecated
|
|
281
|
-
map[key] = DisplayValue.fromJSON(json[key]);
|
|
282
|
-
}
|
|
283
|
-
}
|
|
284
|
-
return map;
|
|
285
|
-
}
|
|
286
|
-
// eslint-disable-next-line @typescript-eslint/no-deprecated
|
|
287
|
-
function displayValuesMapToJSON(values) {
|
|
288
|
-
// eslint-disable-next-line @typescript-eslint/no-deprecated
|
|
289
|
-
const map = {};
|
|
290
|
-
for (const key in values) {
|
|
291
|
-
/* istanbul ignore else */
|
|
292
|
-
if (values.hasOwnProperty(key)) {
|
|
293
|
-
// eslint-disable-next-line @typescript-eslint/no-deprecated
|
|
294
|
-
map[key] = DisplayValue.toJSON(values[key]);
|
|
295
|
-
}
|
|
296
|
-
}
|
|
297
|
-
return map;
|
|
298
|
-
}
|
|
299
85
|
//# sourceMappingURL=Value.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Value.js","sourceRoot":"","sources":["../../../../src/presentation-common/content/Value.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Content\n */\n\nimport { InstanceId, InstanceKey } from \"../EC\";\nimport { LabelDefinition } from \"../LabelDefinition\";\nimport { ValuesDictionary } from \"../Utils\";\n\n/**\n * Raw value type\n * @public\n */\nexport type Value = string | number | boolean | undefined | ValuesMap | ValuesArray | NavigationPropertyValue | NestedContentValue[];\n\n/** @public */\n// eslint-disable-next-line @typescript-eslint/no-redeclare\nexport namespace Value {\n /** Is the value a primitive */\n export function isPrimitive(value: Value): value is string | number | boolean | undefined {\n return isPrimitiveValue(value);\n }\n\n /** Is the value an array */\n export function isArray(value: Value): value is ValuesArray {\n return isArrayValue(value);\n }\n\n /** Is the value a map / struct */\n export function isMap(value: Value): value is ValuesMap {\n return isMapValue(value);\n }\n\n /** Is the value a nested content value */\n export function isNestedContent(value: Value): value is NestedContentValue[] {\n return isNestedContentValue(value);\n }\n\n /** Is the value a navigation value */\n export function isNavigationValue(value: Value): value is NavigationPropertyValue {\n return (\n value !== undefined &&\n (value as NavigationPropertyValue).id !== undefined &&\n (value as NavigationPropertyValue).className !== undefined &&\n (value as NavigationPropertyValue).label !== undefined\n );\n }\n\n /**\n * Serialize [[Value]] to JSON\n * @deprecated in 3.x. Use [[Value]]\n */\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n export function fromJSON(json: ValueJSON): Value {\n if (json === null) {\n return undefined;\n }\n if (isNestedContentValue(json)) {\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n return json.map(NestedContentValue.fromJSON);\n }\n if (isArrayValue(json)) {\n return valuesArrayFromJSON(json);\n }\n if (isMapValue(json)) {\n return valuesMapFromJSON(json);\n }\n return json;\n }\n\n /**\n * Deserialize [[Value]] from JSON\n * @deprecated in 3.x. Use [[Value]]\n */\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n export function toJSON(value: Value): ValueJSON {\n if (undefined === value) {\n return null;\n }\n if (isNestedContentValue(value)) {\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n return value.map(NestedContentValue.toJSON);\n }\n if (isArrayValue(value)) {\n return valuesArrayToJSON(value);\n }\n if (isMapValue(value)) {\n return valuesMapToJSON(value);\n }\n return value;\n }\n}\n\n/**\n * A map of raw values\n * @public\n */\nexport interface ValuesMap extends ValuesDictionary<Value> {} // eslint-disable-line @typescript-eslint/no-empty-object-type\n\n/**\n * An array of raw values\n * @public\n */\nexport interface ValuesArray extends Array<Value> {} // eslint-disable-line @typescript-eslint/no-empty-object-type\n\n/**\n * Display value type.\n * @public\n */\nexport type DisplayValue = string | undefined | DisplayValuesMap | DisplayValuesArray;\n\n/** @public */\n// eslint-disable-next-line @typescript-eslint/no-redeclare\nexport namespace DisplayValue {\n /** Is the value a primitive */\n export function isPrimitive(value: DisplayValue): value is string | undefined {\n return isPrimitiveValue(value);\n }\n\n /** Is the value an array */\n export function isArray(value: DisplayValue): value is DisplayValuesArray {\n return isArrayValue(value);\n }\n\n /** Is the value a map / struct */\n export function isMap(value: DisplayValue): value is DisplayValuesMap {\n return isMapValue(value);\n }\n\n /**\n * Serialize [[DisplayValue]] to JSON\n * @deprecated in 3.x. Use [[DisplayValue]]\n */\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n export function fromJSON(json: DisplayValueJSON): DisplayValue {\n if (json === null) {\n return undefined;\n }\n if (isArrayValue(json)) {\n return displayValuesArrayFromJSON(json);\n }\n if (isMapValue(json)) {\n return displayValuesMapFromJSON(json);\n }\n return json;\n }\n\n /**\n * Deserialize [[DisplayValue]] from JSON\n * @deprecated in 3.x. Use [[DisplayValue]]\n */\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n export function toJSON(value: DisplayValue): DisplayValueJSON {\n if (undefined === value) {\n return null;\n }\n if (isArrayValue(value)) {\n return displayValuesArrayToJSON(value);\n }\n if (isMapValue(value)) {\n return displayValuesMapToJSON(value);\n }\n return value;\n }\n}\n\n/**\n * A map of display values\n * @public\n */\nexport interface DisplayValuesMap extends ValuesDictionary<DisplayValue> {} // eslint-disable-line @typescript-eslint/no-empty-object-type\n\n/**\n * An array of display values\n * @public\n */\nexport interface DisplayValuesArray extends Array<DisplayValue> {} // eslint-disable-line @typescript-eslint/no-empty-object-type\n\n/**\n * Data structure that describes nested content value.\n * @public\n */\nexport interface NestedContentValue {\n /** Keys of instances whose content is contained in this value */\n primaryKeys: InstanceKey[];\n /** Content values map */\n values: ValuesDictionary<Value>;\n /** Content display values map */\n displayValues: ValuesDictionary<DisplayValue>;\n /** Names of fields whose values are merged */\n mergedFieldNames: string[];\n /** Label of the ECInstance that this `NestedContentValue` is based on. */\n labelDefinition?: LabelDefinition;\n}\n\n/**\n * Data structure that describes value of the navigation property.\n * @public\n */\nexport interface NavigationPropertyValue {\n /** Label of target instance. */\n label: LabelDefinition;\n /** Full class name of target instance in format `SchemaName:ClassName` */\n className: string;\n /** Id of target instance. */\n id: InstanceId;\n}\n\n/** @public */\nexport namespace NestedContentValue {\n /**\n * Serialize [[NestedContentValue]] to JSON\n * @deprecated in 3.x. Use [[NestedContentValue]]\n */\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n export function toJSON(value: NestedContentValue): NestedContentValueJSON {\n return {\n ...value,\n values: valuesMapToJSON(value.values),\n displayValues: displayValuesMapToJSON(value.displayValues),\n };\n }\n\n /**\n * Deserialize [[NestedContentValue]] from JSON\n * @deprecated in 3.x. Use [[NestedContentValue]]\n */\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n export function fromJSON(json: NestedContentValueJSON): NestedContentValue {\n return {\n ...json,\n values: valuesMapFromJSON(json.values),\n displayValues: displayValuesMapFromJSON(json.displayValues),\n };\n }\n}\n\n/**\n * JSON representation of [[Value]]\n * @public\n * @deprecated in 3.x. Use [[Value]]\n */\n// eslint-disable-next-line @typescript-eslint/no-deprecated\nexport type ValueJSON = string | number | boolean | null | ValuesMapJSON | ValuesArrayJSON | NavigationPropertyValue | NestedContentValueJSON[];\n/**\n * JSON representation of [[ValuesMap]]\n * @public\n * @deprecated in 3.x. Use [[ValuesMap]]\n */\n// eslint-disable-next-line @typescript-eslint/no-deprecated\nexport interface ValuesMapJSON extends ValuesDictionary<ValueJSON> {} // eslint-disable-line @typescript-eslint/no-empty-object-type\n\n/**\n * JSON representation of [[ValuesArray]]\n * @public\n * @deprecated in 3.x. Use [[ValuesArray]]\n */\n// eslint-disable-next-line @typescript-eslint/no-deprecated\nexport interface ValuesArrayJSON extends Array<ValueJSON> {} // eslint-disable-line @typescript-eslint/no-empty-object-type\n\n/**\n * JSON representation of [[DisplayValue]]\n * @public\n * @deprecated in 3.x. Use [[DisplayValue]]\n */\n// eslint-disable-next-line @typescript-eslint/no-deprecated\nexport type DisplayValueJSON = string | null | DisplayValuesMapJSON | DisplayValuesArrayJSON;\n\n/**\n * JSON representation of [[DisplayValuesMap]]\n * @public\n * @deprecated in 3.x. Use [[DisplayValuesMap]]\n */\n// eslint-disable-next-line @typescript-eslint/no-deprecated\nexport interface DisplayValuesMapJSON extends ValuesDictionary<DisplayValueJSON> {} // eslint-disable-line @typescript-eslint/no-empty-object-type\n\n/**\n * JSON representation of [[DisplayValuesArray]]\n * @public\n * @deprecated in 3.x. Use [[DisplayValuesArray]]\n */\n// eslint-disable-next-line @typescript-eslint/no-deprecated\nexport interface DisplayValuesArrayJSON extends Array<DisplayValueJSON> {} // eslint-disable-line @typescript-eslint/no-empty-object-type\n\n/**\n * JSON representation of [[NestedContentValue]]\n * @public\n * @deprecated in 3.x. Use [[NestedContentValue]]\n */\nexport interface NestedContentValueJSON {\n primaryKeys: InstanceKey[];\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n values: ValuesDictionary<ValueJSON>;\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n displayValues: ValuesDictionary<DisplayValueJSON>;\n mergedFieldNames: string[];\n}\n\n/**\n * A group of raw values and their common display value.\n * @public\n */\nexport interface DisplayValueGroup {\n /** Common display value for all grouped raw values */\n displayValue: DisplayValue;\n /** A list of grouped raw values */\n groupedRawValues: Value[];\n}\n\n/**\n * JSON representation of [[DisplayValueGroup]].\n * @public\n * @deprecated in 3.x. Use [[DisplayValueGroup]]\n */\nexport interface DisplayValueGroupJSON {\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n displayValue: DisplayValueJSON;\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n groupedRawValues: ValueJSON[];\n}\n\n/** @public */\nexport namespace DisplayValueGroup {\n /**\n * Serialize [[DisplayValueGroup]] to JSON\n * @deprecated in 3.x. Use [[DisplayValueGroup]]\n */\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n export function toJSON(group: DisplayValueGroup): DisplayValueGroupJSON {\n return {\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n displayValue: DisplayValue.toJSON(group.displayValue),\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n groupedRawValues: group.groupedRawValues.map(Value.toJSON),\n };\n }\n\n /**\n * Deserialize [[DisplayValueGroup]] from JSON\n * @deprecated in 3.x. Use [[DisplayValueGroup]]\n */\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n export function fromJSON(json: DisplayValueGroupJSON): DisplayValueGroup {\n return {\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n displayValue: DisplayValue.fromJSON(json.displayValue),\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n groupedRawValues: json.groupedRawValues.map(Value.fromJSON),\n };\n }\n}\n\n// eslint-disable-next-line @typescript-eslint/no-deprecated\nfunction isNestedContentValue(v: Value | ValueJSON): v is NestedContentValue[] | NestedContentValueJSON[] {\n return (\n v !== undefined &&\n Array.isArray(v) &&\n (v.length === 0 ||\n (!!v[0] &&\n (v[0] as NestedContentValue).primaryKeys !== undefined &&\n (v[0] as NestedContentValue).values !== undefined &&\n (v[0] as NestedContentValue).displayValues !== undefined &&\n (v[0] as NestedContentValue).mergedFieldNames !== undefined))\n );\n}\n\nfunction isArrayValue(\n v: Value | ValueJSON | DisplayValue | DisplayValueJSON, // eslint-disable-line @typescript-eslint/no-deprecated\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n): v is ValuesArray | ValuesArrayJSON | DisplayValuesArray | DisplayValuesArrayJSON {\n // note: we don't guarantee by 100% that v is ValuesArray | DisplayValuesArray, but merely make compiler happy.\n // we have other means to determine the type of value.\n return v !== undefined && Array.isArray(v);\n}\n// eslint-disable-next-line @typescript-eslint/no-deprecated\nfunction isMapValue(v: Value | ValueJSON | DisplayValue | DisplayValueJSON): v is ValuesMap | ValuesMapJSON | DisplayValuesMap | DisplayValuesMapJSON {\n return v !== undefined && typeof v === \"object\" && !Array.isArray(v);\n}\nfunction isPrimitiveValue(v: Value | DisplayValue): v is string | number | boolean | undefined {\n return !isArrayValue(v) && !isMapValue(v);\n}\n\n// eslint-disable-next-line @typescript-eslint/no-deprecated\nfunction valuesArrayFromJSON(json: ValuesArrayJSON): ValuesArray {\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n return json.map(Value.fromJSON);\n}\n// eslint-disable-next-line @typescript-eslint/no-deprecated\nfunction valuesArrayToJSON(values: ValuesArray): ValuesArrayJSON {\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n return values.map(Value.toJSON);\n}\n// eslint-disable-next-line @typescript-eslint/no-deprecated\nfunction valuesMapFromJSON(json: ValuesMapJSON): ValuesMap {\n const map: ValuesMap = {};\n for (const key in json) {\n /* istanbul ignore else */\n if (json.hasOwnProperty(key)) {\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n map[key] = Value.fromJSON(json[key]);\n }\n }\n return map;\n}\n// eslint-disable-next-line @typescript-eslint/no-deprecated\nfunction valuesMapToJSON(values: ValuesMap): ValuesMapJSON {\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n const map: ValuesMapJSON = {};\n for (const key in values) {\n /* istanbul ignore else */\n if (values.hasOwnProperty(key)) {\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n map[key] = Value.toJSON(values[key]);\n }\n }\n return map;\n}\n\n// eslint-disable-next-line @typescript-eslint/no-deprecated\nfunction displayValuesArrayFromJSON(json: DisplayValuesArrayJSON): DisplayValuesArray {\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n return json.map(DisplayValue.fromJSON);\n}\n// eslint-disable-next-line @typescript-eslint/no-deprecated\nfunction displayValuesArrayToJSON(values: DisplayValuesArray): DisplayValuesArrayJSON {\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n return values.map(DisplayValue.toJSON);\n}\n// eslint-disable-next-line @typescript-eslint/no-deprecated\nfunction displayValuesMapFromJSON(json: DisplayValuesMapJSON): DisplayValuesMap {\n const map: DisplayValuesMap = {};\n for (const key in json) {\n /* istanbul ignore else */\n if (json.hasOwnProperty(key)) {\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n map[key] = DisplayValue.fromJSON(json[key]);\n }\n }\n return map;\n}\n// eslint-disable-next-line @typescript-eslint/no-deprecated\nfunction displayValuesMapToJSON(values: DisplayValuesMap): DisplayValuesMapJSON {\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n const map: DisplayValuesMapJSON = {};\n for (const key in values) {\n /* istanbul ignore else */\n if (values.hasOwnProperty(key)) {\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n map[key] = DisplayValue.toJSON(values[key]);\n }\n }\n return map;\n}\n"]}
|
|
1
|
+
{"version":3,"file":"Value.js","sourceRoot":"","sources":["../../../../src/presentation-common/content/Value.ts"],"names":[],"mappings":";AAAA;;;gGAGgG;AAChG;;GAEG;;;AAYH,cAAc;AACd,2DAA2D;AAC3D,IAAiB,KAAK,CA8BrB;AA9BD,WAAiB,KAAK;IACpB,+BAA+B;IAC/B,SAAgB,WAAW,CAAC,KAAY;QACtC,OAAO,gBAAgB,CAAC,KAAK,CAAC,CAAC;IACjC,CAAC;IAFe,iBAAW,cAE1B,CAAA;IAED,4BAA4B;IAC5B,SAAgB,OAAO,CAAC,KAAY;QAClC,OAAO,YAAY,CAAC,KAAK,CAAC,CAAC;IAC7B,CAAC;IAFe,aAAO,UAEtB,CAAA;IAED,kCAAkC;IAClC,SAAgB,KAAK,CAAC,KAAY;QAChC,OAAO,UAAU,CAAC,KAAK,CAAC,CAAC;IAC3B,CAAC;IAFe,WAAK,QAEpB,CAAA;IAED,0CAA0C;IAC1C,SAAgB,eAAe,CAAC,KAAY;QAC1C,OAAO,oBAAoB,CAAC,KAAK,CAAC,CAAC;IACrC,CAAC;IAFe,qBAAe,kBAE9B,CAAA;IAED,sCAAsC;IACtC,SAAgB,iBAAiB,CAAC,KAAY;QAC5C,OAAO,CACL,KAAK,KAAK,SAAS;YAClB,KAAiC,CAAC,EAAE,KAAK,SAAS;YAClD,KAAiC,CAAC,SAAS,KAAK,SAAS;YACzD,KAAiC,CAAC,KAAK,KAAK,SAAS,CACvD,CAAC;IACJ,CAAC;IAPe,uBAAiB,oBAOhC,CAAA;AACH,CAAC,EA9BgB,KAAK,qBAAL,KAAK,QA8BrB;AAoBD,cAAc;AACd,2DAA2D;AAC3D,IAAiB,YAAY,CAe5B;AAfD,WAAiB,YAAY;IAC3B,+BAA+B;IAC/B,SAAgB,WAAW,CAAC,KAAmB;QAC7C,OAAO,gBAAgB,CAAC,KAAK,CAAC,CAAC;IACjC,CAAC;IAFe,wBAAW,cAE1B,CAAA;IAED,4BAA4B;IAC5B,SAAgB,OAAO,CAAC,KAAmB;QACzC,OAAO,YAAY,CAAC,KAAK,CAAC,CAAC;IAC7B,CAAC;IAFe,oBAAO,UAEtB,CAAA;IAED,kCAAkC;IAClC,SAAgB,KAAK,CAAC,KAAmB;QACvC,OAAO,UAAU,CAAC,KAAK,CAAC,CAAC;IAC3B,CAAC;IAFe,kBAAK,QAEpB,CAAA;AACH,CAAC,EAfgB,YAAY,4BAAZ,YAAY,QAe5B;AA2DD,SAAS,oBAAoB,CAAC,CAAQ;IACpC,OAAO,CACL,CAAC,KAAK,SAAS;QACf,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;QAChB,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC;YACb,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBACJ,CAAC,CAAC,CAAC,CAAwB,CAAC,WAAW,KAAK,SAAS;gBACrD,CAAC,CAAC,CAAC,CAAwB,CAAC,MAAM,KAAK,SAAS;gBAChD,CAAC,CAAC,CAAC,CAAwB,CAAC,aAAa,KAAK,SAAS;gBACvD,CAAC,CAAC,CAAC,CAAwB,CAAC,gBAAgB,KAAK,SAAS,CAAC,CAAC,CAClE,CAAC;AACJ,CAAC;AAED,SAAS,YAAY,CAAC,CAAuB;IAC3C,+GAA+G;IAC/G,sDAAsD;IACtD,OAAO,CAAC,KAAK,SAAS,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;AAC7C,CAAC;AACD,SAAS,UAAU,CAAC,CAAuB;IACzC,OAAO,CAAC,KAAK,SAAS,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;AACvE,CAAC;AACD,SAAS,gBAAgB,CAAC,CAAuB;IAC/C,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;AAC5C,CAAC","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Content\n */\n\nimport { InstanceId, InstanceKey } from \"../EC\";\nimport { LabelDefinition } from \"../LabelDefinition\";\nimport { ValuesDictionary } from \"../Utils\";\n\n/**\n * Raw value type\n * @public\n */\nexport type Value = string | number | boolean | undefined | ValuesMap | ValuesArray | NavigationPropertyValue | NestedContentValue[];\n\n/** @public */\n// eslint-disable-next-line @typescript-eslint/no-redeclare\nexport namespace Value {\n /** Is the value a primitive */\n export function isPrimitive(value: Value): value is string | number | boolean | undefined {\n return isPrimitiveValue(value);\n }\n\n /** Is the value an array */\n export function isArray(value: Value): value is ValuesArray {\n return isArrayValue(value);\n }\n\n /** Is the value a map / struct */\n export function isMap(value: Value): value is ValuesMap {\n return isMapValue(value);\n }\n\n /** Is the value a nested content value */\n export function isNestedContent(value: Value): value is NestedContentValue[] {\n return isNestedContentValue(value);\n }\n\n /** Is the value a navigation value */\n export function isNavigationValue(value: Value): value is NavigationPropertyValue {\n return (\n value !== undefined &&\n (value as NavigationPropertyValue).id !== undefined &&\n (value as NavigationPropertyValue).className !== undefined &&\n (value as NavigationPropertyValue).label !== undefined\n );\n }\n}\n\n/**\n * A map of raw values\n * @public\n */\nexport interface ValuesMap extends ValuesDictionary<Value> {} // eslint-disable-line @typescript-eslint/no-empty-object-type\n\n/**\n * An array of raw values\n * @public\n */\nexport interface ValuesArray extends Array<Value> {} // eslint-disable-line @typescript-eslint/no-empty-object-type\n\n/**\n * Display value type.\n * @public\n */\nexport type DisplayValue = string | undefined | DisplayValuesMap | DisplayValuesArray;\n\n/** @public */\n// eslint-disable-next-line @typescript-eslint/no-redeclare\nexport namespace DisplayValue {\n /** Is the value a primitive */\n export function isPrimitive(value: DisplayValue): value is string | undefined {\n return isPrimitiveValue(value);\n }\n\n /** Is the value an array */\n export function isArray(value: DisplayValue): value is DisplayValuesArray {\n return isArrayValue(value);\n }\n\n /** Is the value a map / struct */\n export function isMap(value: DisplayValue): value is DisplayValuesMap {\n return isMapValue(value);\n }\n}\n\n/**\n * A map of display values\n * @public\n */\nexport interface DisplayValuesMap extends ValuesDictionary<DisplayValue> {} // eslint-disable-line @typescript-eslint/no-empty-object-type\n\n/**\n * An array of display values\n * @public\n */\nexport interface DisplayValuesArray extends Array<DisplayValue> {} // eslint-disable-line @typescript-eslint/no-empty-object-type\n\n/**\n * Data structure that describes nested content value.\n * @public\n */\nexport interface NestedContentValue {\n /** Keys of instances whose content is contained in this value */\n primaryKeys: InstanceKey[];\n /** Content values map */\n values: ValuesDictionary<Value>;\n /** Content display values map */\n displayValues: ValuesDictionary<DisplayValue>;\n /** Names of fields whose values are merged */\n mergedFieldNames: string[];\n /**\n * Label of the ECInstance that this `NestedContentValue` is based on.\n * @deprecated in 5.x. Use [[label]] instead.\n */\n labelDefinition?: LabelDefinition;\n label?: LabelDefinition;\n}\n\n/**\n * Data structure that describes value of the navigation property.\n * @public\n */\nexport interface NavigationPropertyValue {\n /** Label of target instance. */\n label: LabelDefinition;\n /** Full class name of target instance in format `SchemaName:ClassName` */\n className: string;\n /** Id of target instance. */\n id: InstanceId;\n}\n\n/**\n * A group of raw values and their common display value.\n * @public\n */\nexport interface DisplayValueGroup {\n /** Common display value for all grouped raw values */\n displayValue: DisplayValue;\n /** A list of grouped raw values */\n groupedRawValues: Value[];\n}\n\nfunction isNestedContentValue(v: Value): v is NestedContentValue[] {\n return (\n v !== undefined &&\n Array.isArray(v) &&\n (v.length === 0 ||\n (!!v[0] &&\n (v[0] as NestedContentValue).primaryKeys !== undefined &&\n (v[0] as NestedContentValue).values !== undefined &&\n (v[0] as NestedContentValue).displayValues !== undefined &&\n (v[0] as NestedContentValue).mergedFieldNames !== undefined))\n );\n}\n\nfunction isArrayValue(v: Value | DisplayValue): v is ValuesArray | DisplayValuesArray {\n // note: we don't guarantee by 100% that v is ValuesArray | DisplayValuesArray, but merely make compiler happy.\n // we have other means to determine the type of value.\n return v !== undefined && Array.isArray(v);\n}\nfunction isMapValue(v: Value | DisplayValue): v is ValuesMap | DisplayValuesMap {\n return v !== undefined && typeof v === \"object\" && !Array.isArray(v);\n}\nfunction isPrimitiveValue(v: Value | DisplayValue): v is string | number | boolean | undefined {\n return !isArrayValue(v) && !isMapValue(v);\n}\n"]}
|