@itwin/presentation-common 3.6.0-dev.8 → 4.0.0-dev.2
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 +26 -1
- package/LICENSE.md +1 -1
- package/Ruleset.schema.json +236 -309
- package/lib/cjs/presentation-common/EC.d.ts +52 -17
- package/lib/cjs/presentation-common/EC.d.ts.map +1 -1
- package/lib/cjs/presentation-common/EC.js +74 -54
- package/lib/cjs/presentation-common/EC.js.map +1 -1
- package/lib/cjs/presentation-common/ElementProperties.d.ts +14 -14
- package/lib/cjs/presentation-common/ElementProperties.js.map +1 -1
- package/lib/cjs/presentation-common/InstanceFilterDefinition.d.ts +43 -9
- package/lib/cjs/presentation-common/InstanceFilterDefinition.d.ts.map +1 -1
- package/lib/cjs/presentation-common/InstanceFilterDefinition.js.map +1 -1
- package/lib/cjs/presentation-common/KeySet.d.ts.map +1 -1
- package/lib/cjs/presentation-common/KeySet.js +5 -0
- package/lib/cjs/presentation-common/KeySet.js.map +1 -1
- package/lib/cjs/presentation-common/LabelDefinition.d.ts +24 -16
- package/lib/cjs/presentation-common/LabelDefinition.d.ts.map +1 -1
- package/lib/cjs/presentation-common/LabelDefinition.js +26 -29
- package/lib/cjs/presentation-common/LabelDefinition.js.map +1 -1
- package/lib/cjs/presentation-common/PresentationIpcInterface.d.ts +7 -4
- package/lib/cjs/presentation-common/PresentationIpcInterface.d.ts.map +1 -1
- package/lib/cjs/presentation-common/PresentationIpcInterface.js.map +1 -1
- package/lib/cjs/presentation-common/PresentationManagerOptions.d.ts +30 -11
- package/lib/cjs/presentation-common/PresentationManagerOptions.d.ts.map +1 -1
- package/lib/cjs/presentation-common/PresentationManagerOptions.js +1 -1
- package/lib/cjs/presentation-common/PresentationManagerOptions.js.map +1 -1
- package/lib/cjs/presentation-common/PresentationRpcInterface.d.ts +24 -19
- package/lib/cjs/presentation-common/PresentationRpcInterface.d.ts.map +1 -1
- package/lib/cjs/presentation-common/PresentationRpcInterface.js +7 -5
- package/lib/cjs/presentation-common/PresentationRpcInterface.js.map +1 -1
- package/lib/cjs/presentation-common/RpcRequestsHandler.d.ts +9 -8
- package/lib/cjs/presentation-common/RpcRequestsHandler.d.ts.map +1 -1
- package/lib/cjs/presentation-common/RpcRequestsHandler.js +17 -1
- package/lib/cjs/presentation-common/RpcRequestsHandler.js.map +1 -1
- package/lib/cjs/presentation-common/RulesetVariables.d.ts +5 -0
- 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 +23 -4
- package/lib/cjs/presentation-common/Update.d.ts.map +1 -1
- package/lib/cjs/presentation-common/Update.js +34 -4
- package/lib/cjs/presentation-common/Update.js.map +1 -1
- package/lib/cjs/presentation-common/content/Category.d.ts.map +1 -1
- package/lib/cjs/presentation-common/content/Category.js +1 -2
- package/lib/cjs/presentation-common/content/Category.js.map +1 -1
- package/lib/cjs/presentation-common/content/ContentTraverser.d.ts +194 -24
- package/lib/cjs/presentation-common/content/ContentTraverser.d.ts.map +1 -1
- package/lib/cjs/presentation-common/content/ContentTraverser.js +63 -44
- package/lib/cjs/presentation-common/content/ContentTraverser.js.map +1 -1
- package/lib/cjs/presentation-common/content/Descriptor.d.ts +76 -23
- package/lib/cjs/presentation-common/content/Descriptor.d.ts.map +1 -1
- package/lib/cjs/presentation-common/content/Descriptor.js +5 -7
- package/lib/cjs/presentation-common/content/Descriptor.js.map +1 -1
- package/lib/cjs/presentation-common/content/Fields.d.ts +24 -5
- package/lib/cjs/presentation-common/content/Fields.d.ts.map +1 -1
- package/lib/cjs/presentation-common/content/Fields.js +10 -7
- package/lib/cjs/presentation-common/content/Fields.js.map +1 -1
- package/lib/cjs/presentation-common/content/Item.d.ts +8 -10
- package/lib/cjs/presentation-common/content/Item.d.ts.map +1 -1
- package/lib/cjs/presentation-common/content/Item.js +6 -8
- package/lib/cjs/presentation-common/content/Item.js.map +1 -1
- package/lib/cjs/presentation-common/content/Property.d.ts +8 -2
- package/lib/cjs/presentation-common/content/Property.d.ts.map +1 -1
- package/lib/cjs/presentation-common/content/Property.js +12 -8
- package/lib/cjs/presentation-common/content/Property.js.map +1 -1
- package/lib/cjs/presentation-common/content/Value.d.ts +43 -11
- package/lib/cjs/presentation-common/content/Value.d.ts.map +1 -1
- package/lib/cjs/presentation-common/content/Value.js +72 -16
- package/lib/cjs/presentation-common/content/Value.js.map +1 -1
- package/lib/cjs/presentation-common/hierarchy/HierarchyLevel.d.ts +38 -0
- package/lib/cjs/presentation-common/hierarchy/HierarchyLevel.d.ts.map +1 -0
- package/lib/cjs/presentation-common/hierarchy/HierarchyLevel.js +32 -0
- package/lib/cjs/presentation-common/hierarchy/HierarchyLevel.js.map +1 -0
- package/lib/cjs/presentation-common/hierarchy/Key.d.ts +75 -14
- package/lib/cjs/presentation-common/hierarchy/Key.d.ts.map +1 -1
- package/lib/cjs/presentation-common/hierarchy/Key.js +15 -6
- package/lib/cjs/presentation-common/hierarchy/Key.js.map +1 -1
- package/lib/cjs/presentation-common/hierarchy/Node.d.ts +32 -19
- package/lib/cjs/presentation-common/hierarchy/Node.d.ts.map +1 -1
- package/lib/cjs/presentation-common/hierarchy/Node.js +23 -14
- package/lib/cjs/presentation-common/hierarchy/Node.js.map +1 -1
- package/lib/cjs/presentation-common/hierarchy/NodePathElement.d.ts +18 -7
- package/lib/cjs/presentation-common/hierarchy/NodePathElement.d.ts.map +1 -1
- package/lib/cjs/presentation-common/hierarchy/NodePathElement.js +33 -9
- package/lib/cjs/presentation-common/hierarchy/NodePathElement.js.map +1 -1
- package/lib/cjs/presentation-common/rules/RelationshipPathSpecification.d.ts +5 -2
- package/lib/cjs/presentation-common/rules/RelationshipPathSpecification.d.ts.map +1 -1
- package/lib/cjs/presentation-common/rules/RelationshipPathSpecification.js.map +1 -1
- package/lib/cjs/presentation-common/rules/Rule.d.ts +6 -4
- 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/Ruleset.d.ts +0 -1
- package/lib/cjs/presentation-common/rules/Ruleset.d.ts.map +1 -1
- package/lib/cjs/presentation-common/rules/Ruleset.js.map +1 -1
- package/lib/cjs/presentation-common/rules/SchemasSpecification.d.ts +1 -1
- package/lib/cjs/presentation-common/rules/SchemasSpecification.js.map +1 -1
- package/lib/cjs/presentation-common/rules/Variables.d.ts +5 -2
- package/lib/cjs/presentation-common/rules/Variables.d.ts.map +1 -1
- package/lib/cjs/presentation-common/rules/Variables.js.map +1 -1
- package/lib/cjs/presentation-common/rules/content/ContentInstancesOfSpecificClassesSpecification.d.ts +3 -3
- package/lib/cjs/presentation-common/rules/content/ContentInstancesOfSpecificClassesSpecification.d.ts.map +1 -1
- package/lib/cjs/presentation-common/rules/content/ContentInstancesOfSpecificClassesSpecification.js.map +1 -1
- package/lib/cjs/presentation-common/rules/content/ContentRelatedInstancesSpecification.d.ts +2 -2
- package/lib/cjs/presentation-common/rules/content/ContentRelatedInstancesSpecification.d.ts.map +1 -1
- package/lib/cjs/presentation-common/rules/content/ContentRelatedInstancesSpecification.js.map +1 -1
- package/lib/cjs/presentation-common/rules/content/ContentRule.d.ts +2 -2
- package/lib/cjs/presentation-common/rules/content/ContentRule.d.ts.map +1 -1
- package/lib/cjs/presentation-common/rules/content/ContentRule.js.map +1 -1
- package/lib/cjs/presentation-common/rules/content/ContentSpecification.d.ts +6 -3
- 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/content/DefaultPropertyCategoryOverride.d.ts +2 -2
- package/lib/cjs/presentation-common/rules/content/DefaultPropertyCategoryOverride.d.ts.map +1 -1
- package/lib/cjs/presentation-common/rules/content/DefaultPropertyCategoryOverride.js.map +1 -1
- package/lib/cjs/presentation-common/rules/content/SelectedNodeInstancesSpecification.d.ts +2 -2
- package/lib/cjs/presentation-common/rules/content/SelectedNodeInstancesSpecification.d.ts.map +1 -1
- package/lib/cjs/presentation-common/rules/content/SelectedNodeInstancesSpecification.js.map +1 -1
- package/lib/cjs/presentation-common/rules/content/modifiers/ContentModifier.d.ts +2 -2
- package/lib/cjs/presentation-common/rules/content/modifiers/ContentModifier.d.ts.map +1 -1
- package/lib/cjs/presentation-common/rules/content/modifiers/ContentModifier.js.map +1 -1
- package/lib/cjs/presentation-common/rules/content/modifiers/PropertyEditorsSpecification.d.ts +9 -6
- package/lib/cjs/presentation-common/rules/content/modifiers/PropertyEditorsSpecification.d.ts.map +1 -1
- package/lib/cjs/presentation-common/rules/content/modifiers/PropertyEditorsSpecification.js.map +1 -1
- package/lib/cjs/presentation-common/rules/content/modifiers/RelatedPropertiesSpecification.d.ts +6 -3
- package/lib/cjs/presentation-common/rules/content/modifiers/RelatedPropertiesSpecification.d.ts.map +1 -1
- package/lib/cjs/presentation-common/rules/content/modifiers/RelatedPropertiesSpecification.js.map +1 -1
- package/lib/cjs/presentation-common/rules/customization/CheckBoxRule.d.ts +3 -3
- package/lib/cjs/presentation-common/rules/customization/CheckBoxRule.d.ts.map +1 -1
- package/lib/cjs/presentation-common/rules/customization/CheckBoxRule.js.map +1 -1
- package/lib/cjs/presentation-common/rules/customization/ExtendedDataRule.d.ts +2 -2
- package/lib/cjs/presentation-common/rules/customization/ExtendedDataRule.d.ts.map +1 -1
- package/lib/cjs/presentation-common/rules/customization/ExtendedDataRule.js.map +1 -1
- package/lib/cjs/presentation-common/rules/customization/GroupingRule.d.ts +20 -13
- package/lib/cjs/presentation-common/rules/customization/GroupingRule.d.ts.map +1 -1
- package/lib/cjs/presentation-common/rules/customization/GroupingRule.js +1 -1
- package/lib/cjs/presentation-common/rules/customization/GroupingRule.js.map +1 -1
- package/lib/cjs/presentation-common/rules/customization/ImageIdOverride.d.ts +3 -3
- package/lib/cjs/presentation-common/rules/customization/ImageIdOverride.d.ts.map +1 -1
- package/lib/cjs/presentation-common/rules/customization/ImageIdOverride.js.map +1 -1
- package/lib/cjs/presentation-common/rules/customization/InstanceLabelOverride.d.ts +17 -15
- package/lib/cjs/presentation-common/rules/customization/InstanceLabelOverride.d.ts.map +1 -1
- package/lib/cjs/presentation-common/rules/customization/InstanceLabelOverride.js.map +1 -1
- package/lib/cjs/presentation-common/rules/customization/LabelOverride.d.ts +3 -3
- package/lib/cjs/presentation-common/rules/customization/LabelOverride.d.ts.map +1 -1
- package/lib/cjs/presentation-common/rules/customization/LabelOverride.js.map +1 -1
- package/lib/cjs/presentation-common/rules/customization/SortingRule.d.ts +3 -3
- package/lib/cjs/presentation-common/rules/customization/SortingRule.d.ts.map +1 -1
- package/lib/cjs/presentation-common/rules/customization/SortingRule.js.map +1 -1
- package/lib/cjs/presentation-common/rules/customization/StyleOverride.d.ts +3 -3
- package/lib/cjs/presentation-common/rules/customization/StyleOverride.d.ts.map +1 -1
- package/lib/cjs/presentation-common/rules/customization/StyleOverride.js.map +1 -1
- package/lib/cjs/presentation-common/rules/hierarchy/ChildNodeRule.d.ts +1 -2
- package/lib/cjs/presentation-common/rules/hierarchy/ChildNodeRule.d.ts.map +1 -1
- package/lib/cjs/presentation-common/rules/hierarchy/ChildNodeRule.js.map +1 -1
- package/lib/cjs/presentation-common/rules/hierarchy/ChildNodeSpecification.d.ts +5 -4
- package/lib/cjs/presentation-common/rules/hierarchy/ChildNodeSpecification.d.ts.map +1 -1
- package/lib/cjs/presentation-common/rules/hierarchy/ChildNodeSpecification.js +0 -1
- package/lib/cjs/presentation-common/rules/hierarchy/ChildNodeSpecification.js.map +1 -1
- package/lib/cjs/presentation-common/rules/hierarchy/CustomNodeSpecification.d.ts +2 -2
- 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/CustomQueryInstanceNodesSpecification.d.ts +9 -6
- package/lib/cjs/presentation-common/rules/hierarchy/CustomQueryInstanceNodesSpecification.d.ts.map +1 -1
- package/lib/cjs/presentation-common/rules/hierarchy/CustomQueryInstanceNodesSpecification.js.map +1 -1
- package/lib/cjs/presentation-common/rules/hierarchy/InstanceNodesOfSpecificClassesSpecification.d.ts +3 -3
- 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/rules/hierarchy/NodeArtifactsRule.d.ts +2 -2
- package/lib/cjs/presentation-common/rules/hierarchy/NodeArtifactsRule.d.ts.map +1 -1
- package/lib/cjs/presentation-common/rules/hierarchy/NodeArtifactsRule.js.map +1 -1
- package/lib/cjs/presentation-common/rules/hierarchy/RelatedInstanceNodesSpecification.d.ts +2 -2
- package/lib/cjs/presentation-common/rules/hierarchy/RelatedInstanceNodesSpecification.d.ts.map +1 -1
- package/lib/cjs/presentation-common/rules/hierarchy/RelatedInstanceNodesSpecification.js.map +1 -1
- package/lib/cjs/presentation-common/rules/hierarchy/RootNodeRule.d.ts +1 -2
- package/lib/cjs/presentation-common/rules/hierarchy/RootNodeRule.d.ts.map +1 -1
- package/lib/cjs/presentation-common/rules/hierarchy/RootNodeRule.js.map +1 -1
- package/lib/cjs/presentation-common/rules/hierarchy/SubCondition.d.ts +0 -1
- package/lib/cjs/presentation-common/rules/hierarchy/SubCondition.d.ts.map +1 -1
- package/lib/cjs/presentation-common/rules/hierarchy/SubCondition.js.map +1 -1
- package/lib/cjs/presentation-common/selection/SelectionScope.d.ts +17 -4
- package/lib/cjs/presentation-common/selection/SelectionScope.d.ts.map +1 -1
- package/lib/cjs/presentation-common/selection/SelectionScope.js.map +1 -1
- package/lib/cjs/presentation-common.d.ts +1 -0
- package/lib/cjs/presentation-common.d.ts.map +1 -1
- package/lib/cjs/presentation-common.js +1 -0
- package/lib/cjs/presentation-common.js.map +1 -1
- package/lib/esm/presentation-common/EC.d.ts +52 -17
- package/lib/esm/presentation-common/EC.d.ts.map +1 -1
- package/lib/esm/presentation-common/EC.js +75 -55
- package/lib/esm/presentation-common/EC.js.map +1 -1
- package/lib/esm/presentation-common/ElementProperties.d.ts +14 -14
- package/lib/esm/presentation-common/ElementProperties.js.map +1 -1
- package/lib/esm/presentation-common/InstanceFilterDefinition.d.ts +43 -9
- package/lib/esm/presentation-common/InstanceFilterDefinition.d.ts.map +1 -1
- package/lib/esm/presentation-common/InstanceFilterDefinition.js.map +1 -1
- package/lib/esm/presentation-common/KeySet.d.ts.map +1 -1
- package/lib/esm/presentation-common/KeySet.js +5 -0
- package/lib/esm/presentation-common/KeySet.js.map +1 -1
- package/lib/esm/presentation-common/LabelDefinition.d.ts +24 -16
- package/lib/esm/presentation-common/LabelDefinition.d.ts.map +1 -1
- package/lib/esm/presentation-common/LabelDefinition.js +26 -29
- package/lib/esm/presentation-common/LabelDefinition.js.map +1 -1
- package/lib/esm/presentation-common/PresentationIpcInterface.d.ts +7 -4
- package/lib/esm/presentation-common/PresentationIpcInterface.d.ts.map +1 -1
- package/lib/esm/presentation-common/PresentationIpcInterface.js.map +1 -1
- package/lib/esm/presentation-common/PresentationManagerOptions.d.ts +30 -11
- package/lib/esm/presentation-common/PresentationManagerOptions.d.ts.map +1 -1
- package/lib/esm/presentation-common/PresentationManagerOptions.js +1 -1
- package/lib/esm/presentation-common/PresentationManagerOptions.js.map +1 -1
- package/lib/esm/presentation-common/PresentationRpcInterface.d.ts +24 -19
- package/lib/esm/presentation-common/PresentationRpcInterface.d.ts.map +1 -1
- package/lib/esm/presentation-common/PresentationRpcInterface.js +7 -5
- package/lib/esm/presentation-common/PresentationRpcInterface.js.map +1 -1
- package/lib/esm/presentation-common/RpcRequestsHandler.d.ts +9 -8
- package/lib/esm/presentation-common/RpcRequestsHandler.d.ts.map +1 -1
- package/lib/esm/presentation-common/RpcRequestsHandler.js +17 -1
- package/lib/esm/presentation-common/RpcRequestsHandler.js.map +1 -1
- package/lib/esm/presentation-common/RulesetVariables.d.ts +5 -0
- 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 +23 -4
- package/lib/esm/presentation-common/Update.d.ts.map +1 -1
- package/lib/esm/presentation-common/Update.js +34 -4
- package/lib/esm/presentation-common/Update.js.map +1 -1
- package/lib/esm/presentation-common/content/Category.d.ts.map +1 -1
- package/lib/esm/presentation-common/content/Category.js +1 -2
- package/lib/esm/presentation-common/content/Category.js.map +1 -1
- package/lib/esm/presentation-common/content/ContentTraverser.d.ts +194 -24
- package/lib/esm/presentation-common/content/ContentTraverser.d.ts.map +1 -1
- package/lib/esm/presentation-common/content/ContentTraverser.js +60 -42
- package/lib/esm/presentation-common/content/ContentTraverser.js.map +1 -1
- package/lib/esm/presentation-common/content/Descriptor.d.ts +76 -23
- package/lib/esm/presentation-common/content/Descriptor.d.ts.map +1 -1
- package/lib/esm/presentation-common/content/Descriptor.js +5 -7
- package/lib/esm/presentation-common/content/Descriptor.js.map +1 -1
- package/lib/esm/presentation-common/content/Fields.d.ts +24 -5
- package/lib/esm/presentation-common/content/Fields.d.ts.map +1 -1
- package/lib/esm/presentation-common/content/Fields.js +11 -8
- package/lib/esm/presentation-common/content/Fields.js.map +1 -1
- package/lib/esm/presentation-common/content/Item.d.ts +8 -10
- package/lib/esm/presentation-common/content/Item.d.ts.map +1 -1
- package/lib/esm/presentation-common/content/Item.js +6 -8
- package/lib/esm/presentation-common/content/Item.js.map +1 -1
- package/lib/esm/presentation-common/content/Property.d.ts +8 -2
- package/lib/esm/presentation-common/content/Property.d.ts.map +1 -1
- package/lib/esm/presentation-common/content/Property.js +12 -8
- package/lib/esm/presentation-common/content/Property.js.map +1 -1
- package/lib/esm/presentation-common/content/Value.d.ts +43 -11
- package/lib/esm/presentation-common/content/Value.d.ts.map +1 -1
- package/lib/esm/presentation-common/content/Value.js +72 -16
- package/lib/esm/presentation-common/content/Value.js.map +1 -1
- package/lib/esm/presentation-common/hierarchy/HierarchyLevel.d.ts +38 -0
- package/lib/esm/presentation-common/hierarchy/HierarchyLevel.d.ts.map +1 -0
- package/lib/esm/presentation-common/hierarchy/HierarchyLevel.js +29 -0
- package/lib/esm/presentation-common/hierarchy/HierarchyLevel.js.map +1 -0
- package/lib/esm/presentation-common/hierarchy/Key.d.ts +75 -14
- package/lib/esm/presentation-common/hierarchy/Key.d.ts.map +1 -1
- package/lib/esm/presentation-common/hierarchy/Key.js +15 -6
- package/lib/esm/presentation-common/hierarchy/Key.js.map +1 -1
- package/lib/esm/presentation-common/hierarchy/Node.d.ts +32 -19
- package/lib/esm/presentation-common/hierarchy/Node.d.ts.map +1 -1
- package/lib/esm/presentation-common/hierarchy/Node.js +23 -14
- package/lib/esm/presentation-common/hierarchy/Node.js.map +1 -1
- package/lib/esm/presentation-common/hierarchy/NodePathElement.d.ts +18 -7
- package/lib/esm/presentation-common/hierarchy/NodePathElement.d.ts.map +1 -1
- package/lib/esm/presentation-common/hierarchy/NodePathElement.js +33 -9
- package/lib/esm/presentation-common/hierarchy/NodePathElement.js.map +1 -1
- package/lib/esm/presentation-common/rules/RelationshipPathSpecification.d.ts +5 -2
- package/lib/esm/presentation-common/rules/RelationshipPathSpecification.d.ts.map +1 -1
- package/lib/esm/presentation-common/rules/RelationshipPathSpecification.js.map +1 -1
- package/lib/esm/presentation-common/rules/Rule.d.ts +6 -4
- 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/Ruleset.d.ts +0 -1
- package/lib/esm/presentation-common/rules/Ruleset.d.ts.map +1 -1
- package/lib/esm/presentation-common/rules/Ruleset.js.map +1 -1
- package/lib/esm/presentation-common/rules/SchemasSpecification.d.ts +1 -1
- package/lib/esm/presentation-common/rules/SchemasSpecification.js.map +1 -1
- package/lib/esm/presentation-common/rules/Variables.d.ts +5 -2
- package/lib/esm/presentation-common/rules/Variables.d.ts.map +1 -1
- package/lib/esm/presentation-common/rules/Variables.js.map +1 -1
- package/lib/esm/presentation-common/rules/content/ContentInstancesOfSpecificClassesSpecification.d.ts +3 -3
- package/lib/esm/presentation-common/rules/content/ContentInstancesOfSpecificClassesSpecification.d.ts.map +1 -1
- package/lib/esm/presentation-common/rules/content/ContentInstancesOfSpecificClassesSpecification.js.map +1 -1
- package/lib/esm/presentation-common/rules/content/ContentRelatedInstancesSpecification.d.ts +2 -2
- package/lib/esm/presentation-common/rules/content/ContentRelatedInstancesSpecification.d.ts.map +1 -1
- package/lib/esm/presentation-common/rules/content/ContentRelatedInstancesSpecification.js.map +1 -1
- package/lib/esm/presentation-common/rules/content/ContentRule.d.ts +2 -2
- package/lib/esm/presentation-common/rules/content/ContentRule.d.ts.map +1 -1
- package/lib/esm/presentation-common/rules/content/ContentRule.js.map +1 -1
- package/lib/esm/presentation-common/rules/content/ContentSpecification.d.ts +6 -3
- 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/content/DefaultPropertyCategoryOverride.d.ts +2 -2
- package/lib/esm/presentation-common/rules/content/DefaultPropertyCategoryOverride.d.ts.map +1 -1
- package/lib/esm/presentation-common/rules/content/DefaultPropertyCategoryOverride.js.map +1 -1
- package/lib/esm/presentation-common/rules/content/SelectedNodeInstancesSpecification.d.ts +2 -2
- package/lib/esm/presentation-common/rules/content/SelectedNodeInstancesSpecification.d.ts.map +1 -1
- package/lib/esm/presentation-common/rules/content/SelectedNodeInstancesSpecification.js.map +1 -1
- package/lib/esm/presentation-common/rules/content/modifiers/ContentModifier.d.ts +2 -2
- package/lib/esm/presentation-common/rules/content/modifiers/ContentModifier.d.ts.map +1 -1
- package/lib/esm/presentation-common/rules/content/modifiers/ContentModifier.js.map +1 -1
- package/lib/esm/presentation-common/rules/content/modifiers/PropertyEditorsSpecification.d.ts +9 -6
- package/lib/esm/presentation-common/rules/content/modifiers/PropertyEditorsSpecification.d.ts.map +1 -1
- package/lib/esm/presentation-common/rules/content/modifiers/PropertyEditorsSpecification.js.map +1 -1
- package/lib/esm/presentation-common/rules/content/modifiers/RelatedPropertiesSpecification.d.ts +6 -3
- package/lib/esm/presentation-common/rules/content/modifiers/RelatedPropertiesSpecification.d.ts.map +1 -1
- package/lib/esm/presentation-common/rules/content/modifiers/RelatedPropertiesSpecification.js.map +1 -1
- package/lib/esm/presentation-common/rules/customization/CheckBoxRule.d.ts +3 -3
- package/lib/esm/presentation-common/rules/customization/CheckBoxRule.d.ts.map +1 -1
- package/lib/esm/presentation-common/rules/customization/CheckBoxRule.js.map +1 -1
- package/lib/esm/presentation-common/rules/customization/ExtendedDataRule.d.ts +2 -2
- package/lib/esm/presentation-common/rules/customization/ExtendedDataRule.d.ts.map +1 -1
- package/lib/esm/presentation-common/rules/customization/ExtendedDataRule.js.map +1 -1
- package/lib/esm/presentation-common/rules/customization/GroupingRule.d.ts +20 -13
- package/lib/esm/presentation-common/rules/customization/GroupingRule.d.ts.map +1 -1
- package/lib/esm/presentation-common/rules/customization/GroupingRule.js +1 -1
- package/lib/esm/presentation-common/rules/customization/GroupingRule.js.map +1 -1
- package/lib/esm/presentation-common/rules/customization/ImageIdOverride.d.ts +3 -3
- package/lib/esm/presentation-common/rules/customization/ImageIdOverride.d.ts.map +1 -1
- package/lib/esm/presentation-common/rules/customization/ImageIdOverride.js.map +1 -1
- package/lib/esm/presentation-common/rules/customization/InstanceLabelOverride.d.ts +17 -15
- package/lib/esm/presentation-common/rules/customization/InstanceLabelOverride.d.ts.map +1 -1
- package/lib/esm/presentation-common/rules/customization/InstanceLabelOverride.js.map +1 -1
- package/lib/esm/presentation-common/rules/customization/LabelOverride.d.ts +3 -3
- package/lib/esm/presentation-common/rules/customization/LabelOverride.d.ts.map +1 -1
- package/lib/esm/presentation-common/rules/customization/LabelOverride.js.map +1 -1
- package/lib/esm/presentation-common/rules/customization/SortingRule.d.ts +3 -3
- package/lib/esm/presentation-common/rules/customization/SortingRule.d.ts.map +1 -1
- package/lib/esm/presentation-common/rules/customization/SortingRule.js.map +1 -1
- package/lib/esm/presentation-common/rules/customization/StyleOverride.d.ts +3 -3
- package/lib/esm/presentation-common/rules/customization/StyleOverride.d.ts.map +1 -1
- package/lib/esm/presentation-common/rules/customization/StyleOverride.js.map +1 -1
- package/lib/esm/presentation-common/rules/hierarchy/ChildNodeRule.d.ts +1 -2
- package/lib/esm/presentation-common/rules/hierarchy/ChildNodeRule.d.ts.map +1 -1
- package/lib/esm/presentation-common/rules/hierarchy/ChildNodeRule.js.map +1 -1
- package/lib/esm/presentation-common/rules/hierarchy/ChildNodeSpecification.d.ts +5 -4
- package/lib/esm/presentation-common/rules/hierarchy/ChildNodeSpecification.d.ts.map +1 -1
- package/lib/esm/presentation-common/rules/hierarchy/ChildNodeSpecification.js +0 -1
- package/lib/esm/presentation-common/rules/hierarchy/ChildNodeSpecification.js.map +1 -1
- package/lib/esm/presentation-common/rules/hierarchy/CustomNodeSpecification.d.ts +2 -2
- 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/CustomQueryInstanceNodesSpecification.d.ts +9 -6
- package/lib/esm/presentation-common/rules/hierarchy/CustomQueryInstanceNodesSpecification.d.ts.map +1 -1
- package/lib/esm/presentation-common/rules/hierarchy/CustomQueryInstanceNodesSpecification.js.map +1 -1
- package/lib/esm/presentation-common/rules/hierarchy/InstanceNodesOfSpecificClassesSpecification.d.ts +3 -3
- 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/rules/hierarchy/NodeArtifactsRule.d.ts +2 -2
- package/lib/esm/presentation-common/rules/hierarchy/NodeArtifactsRule.d.ts.map +1 -1
- package/lib/esm/presentation-common/rules/hierarchy/NodeArtifactsRule.js.map +1 -1
- package/lib/esm/presentation-common/rules/hierarchy/RelatedInstanceNodesSpecification.d.ts +2 -2
- package/lib/esm/presentation-common/rules/hierarchy/RelatedInstanceNodesSpecification.d.ts.map +1 -1
- package/lib/esm/presentation-common/rules/hierarchy/RelatedInstanceNodesSpecification.js.map +1 -1
- package/lib/esm/presentation-common/rules/hierarchy/RootNodeRule.d.ts +1 -2
- package/lib/esm/presentation-common/rules/hierarchy/RootNodeRule.d.ts.map +1 -1
- package/lib/esm/presentation-common/rules/hierarchy/RootNodeRule.js.map +1 -1
- package/lib/esm/presentation-common/rules/hierarchy/SubCondition.d.ts +0 -1
- package/lib/esm/presentation-common/rules/hierarchy/SubCondition.d.ts.map +1 -1
- package/lib/esm/presentation-common/rules/hierarchy/SubCondition.js.map +1 -1
- package/lib/esm/presentation-common/selection/SelectionScope.d.ts +17 -4
- package/lib/esm/presentation-common/selection/SelectionScope.d.ts.map +1 -1
- package/lib/esm/presentation-common/selection/SelectionScope.js.map +1 -1
- package/lib/esm/presentation-common.d.ts +1 -0
- package/lib/esm/presentation-common.d.ts.map +1 -1
- package/lib/esm/presentation-common.js +1 -0
- package/lib/esm/presentation-common.js.map +1 -1
- package/package.json +10 -10
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RpcRequestsHandler.js","sourceRoot":"","sources":["../../../src/presentation-common/RpcRequestsHandler.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 RPC\r\n */\r\n\r\nimport { Guid, IDisposable, Logger } from \"@itwin/core-bentley\";\r\nimport { IModelRpcProps, RpcManager } from \"@itwin/core-common\";\r\nimport { PresentationCommonLoggerCategory } from \"./CommonLoggerCategory\";\r\nimport { DescriptorJSON, DescriptorOverrides } from \"./content/Descriptor\";\r\nimport { ItemJSON } from \"./content/Item\";\r\nimport { DisplayValueGroupJSON } from \"./content/Value\";\r\nimport { ClientDiagnostics, ClientDiagnosticsAttribute, ClientDiagnosticsHandler } from \"./Diagnostics\";\r\nimport { InstanceKeyJSON } from \"./EC\";\r\nimport { ElementProperties } from \"./ElementProperties\";\r\nimport { PresentationError, PresentationStatus } from \"./Error\";\r\nimport { NodeKeyJSON } from \"./hierarchy/Key\";\r\nimport { NodeJSON } from \"./hierarchy/Node\";\r\nimport { NodePathElementJSON } from \"./hierarchy/NodePathElement\";\r\nimport { KeySetJSON } from \"./KeySet\";\r\nimport { LabelDefinitionJSON } from \"./LabelDefinition\";\r\nimport {\r\n ComputeSelectionRequestOptions, ContentDescriptorRequestOptions, ContentInstanceKeysRequestOptions, ContentRequestOptions,\r\n ContentSourcesRequestOptions, DisplayLabelRequestOptions, DisplayLabelsRequestOptions, DistinctValuesRequestOptions,\r\n FilterByInstancePathsHierarchyRequestOptions, FilterByTextHierarchyRequestOptions, HierarchyRequestOptions, Paged, RequestOptions,\r\n RequestOptionsWithRuleset, SelectionScopeRequestOptions, SingleElementPropertiesRequestOptions,\r\n} from \"./PresentationManagerOptions\";\r\nimport {\r\n ContentSourcesRpcResult, PresentationRpcInterface, PresentationRpcRequestOptions, PresentationRpcResponse,\r\n} from \"./PresentationRpcInterface\";\r\nimport { Ruleset } from \"./rules/Ruleset\";\r\nimport { RulesetVariableJSON } from \"./RulesetVariables\";\r\nimport { SelectionScope } from \"./selection/SelectionScope\";\r\nimport { PagedResponse } from \"./Utils\";\r\n\r\n/**\r\n * Configuration parameters for [[RpcRequestsHandler]].\r\n *\r\n * @internal\r\n */\r\nexport interface RpcRequestsHandlerProps {\r\n /**\r\n * Optional ID used to identify client that requests data. If not specified,\r\n * the handler creates a unique GUID as a client id.\r\n * @internal\r\n */\r\n clientId?: string;\r\n}\r\n\r\n/**\r\n * RPC requests handler that wraps [[PresentationRpcInterface]] and\r\n * adds handling for cases when backend needs to be synced with client\r\n * state.\r\n *\r\n * @internal\r\n */\r\nexport class RpcRequestsHandler implements IDisposable {\r\n public readonly maxRequestRepeatCount: number = 5;\r\n\r\n /** ID that identifies this handler as a client */\r\n public readonly clientId: string;\r\n\r\n public constructor(props?: RpcRequestsHandlerProps) {\r\n this.clientId = (props && props.clientId) ? props.clientId : Guid.createValue();\r\n }\r\n\r\n public dispose() {\r\n }\r\n\r\n // eslint-disable-next-line @typescript-eslint/naming-convention\r\n private get rpcClient(): PresentationRpcInterface { return RpcManager.getClientForInterface(PresentationRpcInterface); }\r\n\r\n private async requestRepeatedly<TResult>(func: () => PresentationRpcResponse<TResult>, diagnosticsHandler?: ClientDiagnosticsHandler, repeatCount: number = 1): Promise<TResult> {\r\n let diagnostics: ClientDiagnostics | undefined;\r\n let error: unknown | undefined;\r\n let shouldRepeat = false;\r\n try {\r\n const response = await func();\r\n diagnostics = response.diagnostics;\r\n\r\n if (response.statusCode === PresentationStatus.Success)\r\n return response.result!;\r\n\r\n if (response.statusCode === PresentationStatus.BackendTimeout && repeatCount < this.maxRequestRepeatCount)\r\n shouldRepeat = true;\r\n else\r\n error = new PresentationError(response.statusCode, response.errorMessage);\r\n\r\n } catch (e) {\r\n error = e;\r\n if (repeatCount < this.maxRequestRepeatCount)\r\n shouldRepeat = true;\r\n\r\n } finally {\r\n diagnosticsHandler && diagnostics && diagnosticsHandler(diagnostics);\r\n }\r\n\r\n if (shouldRepeat) {\r\n ++repeatCount;\r\n return this.requestRepeatedly(func, diagnosticsHandler, repeatCount);\r\n }\r\n\r\n throw error;\r\n }\r\n\r\n /**\r\n * Send the request to backend.\r\n *\r\n * If the backend responds with [[PresentationStatus.BackendTimeout]] or there's an RPC-related error,\r\n * the request is repeated up to `this._maxRequestRepeatCount` times. If we fail to get a valid success or error\r\n * response from the backend, throw the last encountered error.\r\n *\r\n * @internal\r\n */\r\n public async request<TResult, TOptions extends (RequestOptions<IModelRpcProps> & ClientDiagnosticsAttribute), TArg = any>(\r\n func: (token: IModelRpcProps, options: PresentationRpcRequestOptions<TOptions>, ...args: TArg[]) => PresentationRpcResponse<TResult>,\r\n options: TOptions,\r\n ...additionalOptions: TArg[]\r\n ): Promise<TResult> {\r\n const { imodel, diagnostics, ...optionsNoIModel } = options;\r\n const { handler: diagnosticsHandler, ...diagnosticsOptions } = diagnostics ?? {};\r\n if (isOptionsWithRuleset(optionsNoIModel))\r\n optionsNoIModel.rulesetOrId = cleanupRuleset(optionsNoIModel.rulesetOrId);\r\n const rpcOptions: PresentationRpcRequestOptions<TOptions> = {\r\n ...optionsNoIModel,\r\n clientId: this.clientId,\r\n };\r\n if (diagnostics)\r\n rpcOptions.diagnostics = diagnosticsOptions;\r\n const doRequest = async () => func(imodel, rpcOptions, ...additionalOptions);\r\n return this.requestRepeatedly(doRequest, diagnosticsHandler);\r\n }\r\n\r\n public async getNodesCount(options: HierarchyRequestOptions<IModelRpcProps, NodeKeyJSON, RulesetVariableJSON> & ClientDiagnosticsAttribute): Promise<number> {\r\n return this.request<number, typeof options>(\r\n this.rpcClient.getNodesCount.bind(this.rpcClient), options);\r\n }\r\n public async getPagedNodes(options: Paged<HierarchyRequestOptions<IModelRpcProps, NodeKeyJSON, RulesetVariableJSON>> & ClientDiagnosticsAttribute): Promise<PagedResponse<NodeJSON>> {\r\n return this.request<PagedResponse<NodeJSON>, typeof options>(\r\n this.rpcClient.getPagedNodes.bind(this.rpcClient), options);\r\n }\r\n\r\n public async getNodePaths(options: FilterByInstancePathsHierarchyRequestOptions<IModelRpcProps, RulesetVariableJSON> & ClientDiagnosticsAttribute): Promise<NodePathElementJSON[]> {\r\n return this.request<NodePathElementJSON[], typeof options>(\r\n this.rpcClient.getNodePaths.bind(this.rpcClient), options);\r\n }\r\n public async getFilteredNodePaths(options: FilterByTextHierarchyRequestOptions<IModelRpcProps, RulesetVariableJSON> & ClientDiagnosticsAttribute): Promise<NodePathElementJSON[]> {\r\n return this.request<NodePathElementJSON[], typeof options>(\r\n this.rpcClient.getFilteredNodePaths.bind(this.rpcClient), options);\r\n }\r\n\r\n public async getContentSources(options: ContentSourcesRequestOptions<IModelRpcProps> & ClientDiagnosticsAttribute): Promise<ContentSourcesRpcResult> {\r\n return this.request<ContentSourcesRpcResult, typeof options>(\r\n this.rpcClient.getContentSources.bind(this.rpcClient), options);\r\n }\r\n public async getContentDescriptor(options: ContentDescriptorRequestOptions<IModelRpcProps, KeySetJSON, RulesetVariableJSON> & ClientDiagnosticsAttribute): Promise<DescriptorJSON | undefined> {\r\n return this.request<DescriptorJSON | undefined, typeof options>(\r\n this.rpcClient.getContentDescriptor.bind(this.rpcClient), options);\r\n }\r\n public async getContentSetSize(options: ContentRequestOptions<IModelRpcProps, DescriptorOverrides, KeySetJSON, RulesetVariableJSON> & ClientDiagnosticsAttribute): Promise<number> {\r\n return this.request<number, typeof options>(\r\n this.rpcClient.getContentSetSize.bind(this.rpcClient), options);\r\n }\r\n public async getPagedContent(options: Paged<ContentRequestOptions<IModelRpcProps, DescriptorOverrides, KeySetJSON, RulesetVariableJSON> & ClientDiagnosticsAttribute>) {\r\n return this.request<{ descriptor: DescriptorJSON, contentSet: PagedResponse<ItemJSON> } | undefined, typeof options>(\r\n this.rpcClient.getPagedContent.bind(this.rpcClient), options);\r\n }\r\n public async getPagedContentSet(options: Paged<ContentRequestOptions<IModelRpcProps, DescriptorOverrides, KeySetJSON, RulesetVariableJSON> & ClientDiagnosticsAttribute>) {\r\n return this.request<PagedResponse<ItemJSON>, typeof options>(\r\n this.rpcClient.getPagedContentSet.bind(this.rpcClient), options);\r\n }\r\n\r\n public async getPagedDistinctValues(options: DistinctValuesRequestOptions<IModelRpcProps, DescriptorOverrides, KeySetJSON, RulesetVariableJSON> & ClientDiagnosticsAttribute): Promise<PagedResponse<DisplayValueGroupJSON>> {\r\n return this.request<PagedResponse<DisplayValueGroupJSON>, typeof options>(\r\n this.rpcClient.getPagedDistinctValues.bind(this.rpcClient), options);\r\n }\r\n\r\n public async getElementProperties(options: SingleElementPropertiesRequestOptions<IModelRpcProps> & ClientDiagnosticsAttribute): Promise<ElementProperties | undefined> {\r\n return this.request<ElementProperties | undefined, typeof options>(\r\n this.rpcClient.getElementProperties.bind(this.rpcClient), options);\r\n }\r\n\r\n public async getContentInstanceKeys(options: ContentInstanceKeysRequestOptions<IModelRpcProps, KeySetJSON, RulesetVariableJSON> & ClientDiagnosticsAttribute): Promise<{ total: number, items: KeySetJSON }> {\r\n return this.request<{ total: number, items: KeySetJSON }, typeof options>(\r\n this.rpcClient.getContentInstanceKeys.bind(this.rpcClient), options);\r\n }\r\n\r\n public async getDisplayLabelDefinition(options: DisplayLabelRequestOptions<IModelRpcProps, InstanceKeyJSON> & ClientDiagnosticsAttribute): Promise<LabelDefinitionJSON> {\r\n return this.request<LabelDefinitionJSON, typeof options>(\r\n this.rpcClient.getDisplayLabelDefinition.bind(this.rpcClient), options);\r\n }\r\n public async getPagedDisplayLabelDefinitions(options: DisplayLabelsRequestOptions<IModelRpcProps, InstanceKeyJSON> & ClientDiagnosticsAttribute): Promise<PagedResponse<LabelDefinitionJSON>> {\r\n return this.request<PagedResponse<LabelDefinitionJSON>, typeof options>(\r\n this.rpcClient.getPagedDisplayLabelDefinitions.bind(this.rpcClient), options);\r\n }\r\n\r\n public async getSelectionScopes(options: SelectionScopeRequestOptions<IModelRpcProps> & ClientDiagnosticsAttribute): Promise<SelectionScope[]> {\r\n return this.request<SelectionScope[], typeof options>(\r\n this.rpcClient.getSelectionScopes.bind(this.rpcClient), options);\r\n }\r\n public async computeSelection(options: ComputeSelectionRequestOptions<IModelRpcProps> & ClientDiagnosticsAttribute): Promise<KeySetJSON> {\r\n return this.request<KeySetJSON, typeof options>(\r\n this.rpcClient.computeSelection.bind(this.rpcClient), options);\r\n }\r\n}\r\n\r\nfunction isOptionsWithRuleset(options: Object): options is { rulesetOrId: Ruleset } {\r\n return (typeof (options as RequestOptionsWithRuleset<any, any>).rulesetOrId === \"object\");\r\n}\r\n\r\ntype RulesetWithRequiredProperties = {\r\n [key in keyof Ruleset]-?: true;\r\n};\r\n\r\nconst RULESET_SUPPORTED_PROPERTIES_OBJ: RulesetWithRequiredProperties = {\r\n id: true,\r\n rules: true,\r\n version: true,\r\n requiredSchemas: true,\r\n supplementationInfo: true,\r\n vars: true,\r\n};\r\n\r\nfunction cleanupRuleset(ruleset: Ruleset): Ruleset {\r\n const cleanedUpRuleset: Ruleset = { ...ruleset };\r\n\r\n for (const propertyKey of Object.keys(cleanedUpRuleset)) {\r\n if (!RULESET_SUPPORTED_PROPERTIES_OBJ.hasOwnProperty(propertyKey)) {\r\n if (propertyKey === \"$schema\")\r\n delete (cleanedUpRuleset as any)[propertyKey];\r\n else\r\n Logger.logWarning(PresentationCommonLoggerCategory.Package, `Provided ruleset contains unrecognized attribute '${propertyKey}'. It either doesn't exist or may be no longer supported.`);\r\n }\r\n }\r\n\r\n return cleanedUpRuleset;\r\n}\r\n"]}
|
|
1
|
+
{"version":3,"file":"RpcRequestsHandler.js","sourceRoot":"","sources":["../../../src/presentation-common/RpcRequestsHandler.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 RPC\r\n */\r\n\r\nimport { Guid, IDisposable, Logger } from \"@itwin/core-bentley\";\r\nimport { IModelRpcProps, RpcManager } from \"@itwin/core-common\";\r\nimport { PresentationCommonLoggerCategory } from \"./CommonLoggerCategory\";\r\nimport { DescriptorJSON, DescriptorOverrides } from \"./content/Descriptor\";\r\nimport { ItemJSON } from \"./content/Item\";\r\nimport { DisplayValueGroupJSON } from \"./content/Value\";\r\nimport { ClientDiagnostics, ClientDiagnosticsAttribute, ClientDiagnosticsHandler } from \"./Diagnostics\";\r\nimport { InstanceKey } from \"./EC\";\r\nimport { ElementProperties } from \"./ElementProperties\";\r\nimport { PresentationError, PresentationStatus } from \"./Error\";\r\nimport { NodeKey } from \"./hierarchy/Key\";\r\nimport { NodeJSON } from \"./hierarchy/Node\";\r\nimport { NodePathElementJSON } from \"./hierarchy/NodePathElement\";\r\nimport { KeySetJSON } from \"./KeySet\";\r\nimport { LabelDefinition } from \"./LabelDefinition\";\r\nimport {\r\n ComputeSelectionRequestOptions, ContentDescriptorRequestOptions, ContentInstanceKeysRequestOptions, ContentRequestOptions,\r\n ContentSourcesRequestOptions, DisplayLabelRequestOptions, DisplayLabelsRequestOptions, DistinctValuesRequestOptions,\r\n FilterByInstancePathsHierarchyRequestOptions, FilterByTextHierarchyRequestOptions, HierarchyLevelDescriptorRequestOptions, HierarchyRequestOptions,\r\n Paged, RequestOptions, RequestOptionsWithRuleset, SelectionScopeRequestOptions, SingleElementPropertiesRequestOptions,\r\n} from \"./PresentationManagerOptions\";\r\nimport {\r\n ContentSourcesRpcResult, PresentationRpcInterface, PresentationRpcRequestOptions, PresentationRpcResponse,\r\n} from \"./PresentationRpcInterface\";\r\nimport { Ruleset } from \"./rules/Ruleset\";\r\nimport { RulesetVariableJSON } from \"./RulesetVariables\";\r\nimport { SelectionScope } from \"./selection/SelectionScope\";\r\nimport { PagedResponse } from \"./Utils\";\r\n\r\n/**\r\n * Configuration parameters for [[RpcRequestsHandler]].\r\n *\r\n * @internal\r\n */\r\nexport interface RpcRequestsHandlerProps {\r\n /**\r\n * Optional ID used to identify client that requests data. If not specified,\r\n * the handler creates a unique GUID as a client id.\r\n * @internal\r\n */\r\n clientId?: string;\r\n}\r\n\r\n/**\r\n * RPC requests handler that wraps [[PresentationRpcInterface]] and\r\n * adds handling for cases when backend needs to be synced with client\r\n * state.\r\n *\r\n * @internal\r\n */\r\nexport class RpcRequestsHandler implements IDisposable {\r\n public readonly maxRequestRepeatCount: number = 5;\r\n\r\n /** ID that identifies this handler as a client */\r\n public readonly clientId: string;\r\n\r\n public constructor(props?: RpcRequestsHandlerProps) {\r\n this.clientId = (props && props.clientId) ? props.clientId : Guid.createValue();\r\n }\r\n\r\n public dispose() {\r\n }\r\n\r\n // eslint-disable-next-line @typescript-eslint/naming-convention\r\n private get rpcClient(): PresentationRpcInterface { return RpcManager.getClientForInterface(PresentationRpcInterface); }\r\n\r\n private async requestRepeatedly<TResult>(func: () => PresentationRpcResponse<TResult>, diagnosticsHandler?: ClientDiagnosticsHandler, repeatCount: number = 1): Promise<TResult> {\r\n let diagnostics: ClientDiagnostics | undefined;\r\n let error: unknown | undefined;\r\n let shouldRepeat = false;\r\n try {\r\n const response = await func();\r\n diagnostics = response.diagnostics;\r\n\r\n if (response.statusCode === PresentationStatus.Success)\r\n return response.result!;\r\n\r\n if (response.statusCode === PresentationStatus.BackendTimeout && repeatCount < this.maxRequestRepeatCount)\r\n shouldRepeat = true;\r\n else\r\n error = new PresentationError(response.statusCode, response.errorMessage);\r\n\r\n } catch (e) {\r\n error = e;\r\n if (repeatCount < this.maxRequestRepeatCount)\r\n shouldRepeat = true;\r\n\r\n } finally {\r\n diagnosticsHandler && diagnostics && diagnosticsHandler(diagnostics);\r\n }\r\n\r\n if (shouldRepeat) {\r\n ++repeatCount;\r\n return this.requestRepeatedly(func, diagnosticsHandler, repeatCount);\r\n }\r\n\r\n throw error;\r\n }\r\n\r\n /**\r\n * Send the request to backend.\r\n *\r\n * If the backend responds with [[PresentationStatus.BackendTimeout]] or there's an RPC-related error,\r\n * the request is repeated up to `this._maxRequestRepeatCount` times. If we fail to get a valid success or error\r\n * response from the backend, throw the last encountered error.\r\n *\r\n * @internal\r\n */\r\n public async request<TResult, TOptions extends (RequestOptions<IModelRpcProps> & ClientDiagnosticsAttribute), TArg = any>(\r\n func: (token: IModelRpcProps, options: PresentationRpcRequestOptions<TOptions>, ...args: TArg[]) => PresentationRpcResponse<TResult>,\r\n options: TOptions,\r\n ...additionalOptions: TArg[]\r\n ): Promise<TResult> {\r\n const { imodel, diagnostics, ...optionsNoIModel } = options;\r\n const { handler: diagnosticsHandler, ...diagnosticsOptions } = diagnostics ?? {};\r\n if (isOptionsWithRuleset(optionsNoIModel))\r\n optionsNoIModel.rulesetOrId = cleanupRuleset(optionsNoIModel.rulesetOrId);\r\n const rpcOptions: PresentationRpcRequestOptions<TOptions> = {\r\n ...optionsNoIModel,\r\n clientId: this.clientId,\r\n };\r\n if (diagnostics)\r\n rpcOptions.diagnostics = diagnosticsOptions;\r\n const doRequest = async () => func(imodel, rpcOptions, ...additionalOptions);\r\n return this.requestRepeatedly(doRequest, diagnosticsHandler);\r\n }\r\n\r\n public async getNodesCount(options: HierarchyRequestOptions<IModelRpcProps, NodeKey, RulesetVariableJSON> & ClientDiagnosticsAttribute): Promise<number> {\r\n return this.request<number, typeof options>(\r\n this.rpcClient.getNodesCount.bind(this.rpcClient), options);\r\n }\r\n // eslint-disable-next-line deprecation/deprecation\r\n public async getPagedNodes(options: Paged<HierarchyRequestOptions<IModelRpcProps, NodeKey, RulesetVariableJSON>> & ClientDiagnosticsAttribute): Promise<PagedResponse<NodeJSON>> {\r\n // eslint-disable-next-line deprecation/deprecation\r\n return this.request<PagedResponse<NodeJSON>, typeof options>(\r\n this.rpcClient.getPagedNodes.bind(this.rpcClient), options);\r\n }\r\n\r\n public async getNodesDescriptor(options: HierarchyLevelDescriptorRequestOptions<IModelRpcProps, NodeKey, RulesetVariableJSON> & ClientDiagnosticsAttribute): Promise<DescriptorJSON | undefined> {\r\n const response = await this.request<string | DescriptorJSON | undefined, typeof options>(\r\n this.rpcClient.getNodesDescriptor.bind(this.rpcClient), options);\r\n if (typeof response === \"string\")\r\n return JSON.parse(response);\r\n return response;\r\n }\r\n\r\n // eslint-disable-next-line deprecation/deprecation\r\n public async getNodePaths(options: FilterByInstancePathsHierarchyRequestOptions<IModelRpcProps, RulesetVariableJSON> & ClientDiagnosticsAttribute): Promise<NodePathElementJSON[]> {\r\n // eslint-disable-next-line deprecation/deprecation\r\n return this.request<NodePathElementJSON[], typeof options>(\r\n this.rpcClient.getNodePaths.bind(this.rpcClient), options);\r\n }\r\n // eslint-disable-next-line deprecation/deprecation\r\n public async getFilteredNodePaths(options: FilterByTextHierarchyRequestOptions<IModelRpcProps, RulesetVariableJSON> & ClientDiagnosticsAttribute): Promise<NodePathElementJSON[]> {\r\n // eslint-disable-next-line deprecation/deprecation\r\n return this.request<NodePathElementJSON[], typeof options>(\r\n this.rpcClient.getFilteredNodePaths.bind(this.rpcClient), options);\r\n }\r\n\r\n public async getContentSources(options: ContentSourcesRequestOptions<IModelRpcProps> & ClientDiagnosticsAttribute): Promise<ContentSourcesRpcResult> {\r\n return this.request<ContentSourcesRpcResult, typeof options>(\r\n this.rpcClient.getContentSources.bind(this.rpcClient), options);\r\n }\r\n public async getContentDescriptor(options: ContentDescriptorRequestOptions<IModelRpcProps, KeySetJSON, RulesetVariableJSON> & ClientDiagnosticsAttribute): Promise<DescriptorJSON | undefined> {\r\n return this.request<DescriptorJSON | undefined, typeof options>(\r\n this.rpcClient.getContentDescriptor.bind(this.rpcClient), options);\r\n }\r\n public async getContentSetSize(options: ContentRequestOptions<IModelRpcProps, DescriptorOverrides, KeySetJSON, RulesetVariableJSON> & ClientDiagnosticsAttribute): Promise<number> {\r\n return this.request<number, typeof options>(\r\n this.rpcClient.getContentSetSize.bind(this.rpcClient), options);\r\n }\r\n public async getPagedContent(options: Paged<ContentRequestOptions<IModelRpcProps, DescriptorOverrides, KeySetJSON, RulesetVariableJSON> & ClientDiagnosticsAttribute>) {\r\n return this.request<{ descriptor: DescriptorJSON, contentSet: PagedResponse<ItemJSON> } | undefined, typeof options>(\r\n this.rpcClient.getPagedContent.bind(this.rpcClient), options);\r\n }\r\n public async getPagedContentSet(options: Paged<ContentRequestOptions<IModelRpcProps, DescriptorOverrides, KeySetJSON, RulesetVariableJSON> & ClientDiagnosticsAttribute>) {\r\n return this.request<PagedResponse<ItemJSON>, typeof options>(\r\n this.rpcClient.getPagedContentSet.bind(this.rpcClient), options);\r\n }\r\n\r\n // eslint-disable-next-line deprecation/deprecation\r\n public async getPagedDistinctValues(options: DistinctValuesRequestOptions<IModelRpcProps, DescriptorOverrides, KeySetJSON, RulesetVariableJSON> & ClientDiagnosticsAttribute): Promise<PagedResponse<DisplayValueGroupJSON>> {\r\n // eslint-disable-next-line deprecation/deprecation\r\n return this.request<PagedResponse<DisplayValueGroupJSON>, typeof options>(\r\n this.rpcClient.getPagedDistinctValues.bind(this.rpcClient), options);\r\n }\r\n\r\n public async getElementProperties(options: SingleElementPropertiesRequestOptions<IModelRpcProps> & ClientDiagnosticsAttribute): Promise<ElementProperties | undefined> {\r\n return this.request<ElementProperties | undefined, typeof options>(\r\n this.rpcClient.getElementProperties.bind(this.rpcClient), options);\r\n }\r\n\r\n public async getContentInstanceKeys(options: ContentInstanceKeysRequestOptions<IModelRpcProps, KeySetJSON, RulesetVariableJSON> & ClientDiagnosticsAttribute): Promise<{ total: number, items: KeySetJSON }> {\r\n return this.request<{ total: number, items: KeySetJSON }, typeof options>(\r\n this.rpcClient.getContentInstanceKeys.bind(this.rpcClient), options);\r\n }\r\n\r\n public async getDisplayLabelDefinition(options: DisplayLabelRequestOptions<IModelRpcProps, InstanceKey> & ClientDiagnosticsAttribute): Promise<LabelDefinition> {\r\n return this.request<LabelDefinition, typeof options>(\r\n this.rpcClient.getDisplayLabelDefinition.bind(this.rpcClient), options);\r\n }\r\n public async getPagedDisplayLabelDefinitions(options: DisplayLabelsRequestOptions<IModelRpcProps, InstanceKey> & ClientDiagnosticsAttribute): Promise<PagedResponse<LabelDefinition>> {\r\n return this.request<PagedResponse<LabelDefinition>, typeof options>(\r\n this.rpcClient.getPagedDisplayLabelDefinitions.bind(this.rpcClient), options);\r\n }\r\n\r\n public async getSelectionScopes(options: SelectionScopeRequestOptions<IModelRpcProps> & ClientDiagnosticsAttribute): Promise<SelectionScope[]> {\r\n return this.request<SelectionScope[], typeof options>(\r\n this.rpcClient.getSelectionScopes.bind(this.rpcClient), options);\r\n }\r\n public async computeSelection(options: ComputeSelectionRequestOptions<IModelRpcProps> & ClientDiagnosticsAttribute): Promise<KeySetJSON> {\r\n return this.request<KeySetJSON, typeof options>(\r\n // eslint-disable-next-line deprecation/deprecation\r\n this.rpcClient.computeSelection.bind(this.rpcClient), options);\r\n }\r\n}\r\n\r\nfunction isOptionsWithRuleset(options: Object): options is { rulesetOrId: Ruleset } {\r\n return (typeof (options as RequestOptionsWithRuleset<any, any>).rulesetOrId === \"object\");\r\n}\r\n\r\ntype RulesetWithRequiredProperties = {\r\n [key in keyof Ruleset]-?: true;\r\n};\r\n\r\nconst RULESET_SUPPORTED_PROPERTIES_OBJ: RulesetWithRequiredProperties = {\r\n id: true,\r\n rules: true,\r\n version: true,\r\n requiredSchemas: true,\r\n supplementationInfo: true,\r\n vars: true,\r\n};\r\n\r\nfunction cleanupRuleset(ruleset: Ruleset): Ruleset {\r\n const cleanedUpRuleset: Ruleset = { ...ruleset };\r\n\r\n for (const propertyKey of Object.keys(cleanedUpRuleset)) {\r\n if (!RULESET_SUPPORTED_PROPERTIES_OBJ.hasOwnProperty(propertyKey)) {\r\n if (propertyKey === \"$schema\")\r\n delete (cleanedUpRuleset as any)[propertyKey];\r\n else\r\n Logger.logWarning(PresentationCommonLoggerCategory.Package, `Provided ruleset contains unrecognized attribute '${propertyKey}'. It either doesn't exist or may be no longer supported.`);\r\n }\r\n }\r\n\r\n return cleanedUpRuleset;\r\n}\r\n"]}
|
|
@@ -104,6 +104,7 @@ export interface RulesetVariableBaseJSON {
|
|
|
104
104
|
/**
|
|
105
105
|
* JSON representation of [[BooleanRulesetVariable]].
|
|
106
106
|
* @public
|
|
107
|
+
* @deprecated in 3.x. Use [[BooleanRulesetVariable]]
|
|
107
108
|
*/
|
|
108
109
|
export interface BooleanRulesetVariableJSON extends RulesetVariableBaseJSON {
|
|
109
110
|
type: VariableValueTypes.Bool;
|
|
@@ -112,6 +113,7 @@ export interface BooleanRulesetVariableJSON extends RulesetVariableBaseJSON {
|
|
|
112
113
|
/**
|
|
113
114
|
* JSON representation of [[StringRulesetVariable]].
|
|
114
115
|
* @public
|
|
116
|
+
* @deprecated in 3.x. Use [[StringRulesetVariable]]
|
|
115
117
|
*/
|
|
116
118
|
export interface StringRulesetVariableJSON extends RulesetVariableBaseJSON {
|
|
117
119
|
type: VariableValueTypes.String;
|
|
@@ -120,6 +122,7 @@ export interface StringRulesetVariableJSON extends RulesetVariableBaseJSON {
|
|
|
120
122
|
/**
|
|
121
123
|
* JSON representation of [[IntRulesetVariable]].
|
|
122
124
|
* @public
|
|
125
|
+
* @deprecated in 3.x. Use [[IntRulesetVariable]]
|
|
123
126
|
*/
|
|
124
127
|
export interface IntRulesetVariableJSON extends RulesetVariableBaseJSON {
|
|
125
128
|
type: VariableValueTypes.Int;
|
|
@@ -128,6 +131,7 @@ export interface IntRulesetVariableJSON extends RulesetVariableBaseJSON {
|
|
|
128
131
|
/**
|
|
129
132
|
* JSON representation of [[IntsRulesetVariable]].
|
|
130
133
|
* @public
|
|
134
|
+
* @deprecated in 3.x. Use [[IntsRulesetVariable]]
|
|
131
135
|
*/
|
|
132
136
|
export interface IntsRulesetVariableJSON extends RulesetVariableBaseJSON {
|
|
133
137
|
type: VariableValueTypes.IntArray;
|
|
@@ -136,6 +140,7 @@ export interface IntsRulesetVariableJSON extends RulesetVariableBaseJSON {
|
|
|
136
140
|
/**
|
|
137
141
|
* JSON representation of [[Id64RulesetVariable]].
|
|
138
142
|
* @public
|
|
143
|
+
* @deprecated in 3.x. Use [[Id64RulesetVariable]]
|
|
139
144
|
*/
|
|
140
145
|
export interface Id64RulesetVariableJSON extends RulesetVariableBaseJSON {
|
|
141
146
|
type: VariableValueTypes.Id64;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RulesetVariables.d.ts","sourceRoot":"","sources":["../../../src/presentation-common/RulesetVariables.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAE,iBAAiB,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEpE;;;GAGG;AACH,oBAAY,kBAAkB;IAC5B,oBAAoB;IACpB,GAAG,QAAQ;IAEX,8BAA8B;IAC9B,QAAQ,UAAU;IAElB,oBAAoB;IACpB,IAAI,SAAS;IAEb,mBAAmB;IACnB,MAAM,WAAW;IAEjB,uBAAuB;IACvB,IAAI,SAAS;IAEb,iCAAiC;IACjC,SAAS,WAAW;CACrB;AAED;;;GAGG;AACH,oBAAY,aAAa,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,GAAG,UAAU,GAAG,UAAU,EAAE,CAAC;AAE7F;;;GAGG;AACH,oBAAY,iBAAiB,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,GAAG,UAAU,GAAG,UAAU,EAAE,GAAG,iBAAiB,CAAC;AAErH;;;GAGG;AACH,MAAM,WAAW,mBAAmB;IAClC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,kBAAkB,CAAC;IACzB,KAAK,EAAE,aAAa,CAAC;CACtB;AACD;;;GAGG;AACH,MAAM,WAAW,sBAAuB,SAAQ,mBAAmB;IACjE,IAAI,EAAE,kBAAkB,CAAC,IAAI,CAAC;IAC9B,KAAK,EAAE,OAAO,CAAC;CAChB;AACD;;;GAGG;AACH,MAAM,WAAW,qBAAsB,SAAQ,mBAAmB;IAChE,IAAI,EAAE,kBAAkB,CAAC,MAAM,CAAC;IAChC,KAAK,EAAE,MAAM,CAAC;CACf;AACD;;;GAGG;AACH,MAAM,WAAW,kBAAmB,SAAQ,mBAAmB;IAC7D,IAAI,EAAE,kBAAkB,CAAC,GAAG,CAAC;IAC7B,KAAK,EAAE,MAAM,CAAC;CACf;AACD;;;GAGG;AACH,MAAM,WAAW,mBAAoB,SAAQ,mBAAmB;IAC9D,IAAI,EAAE,kBAAkB,CAAC,QAAQ,CAAC;IAClC,KAAK,EAAE,MAAM,EAAE,CAAC;CACjB;AACD;;;GAGG;AACH,MAAM,WAAW,mBAAoB,SAAQ,mBAAmB;IAC9D,IAAI,EAAE,kBAAkB,CAAC,IAAI,CAAC;IAC9B,KAAK,EAAE,UAAU,CAAC;CACnB;AACD;;;GAGG;AACH,MAAM,WAAW,oBAAqB,SAAQ,mBAAmB;IAC/D,IAAI,EAAE,kBAAkB,CAAC,SAAS,CAAC;IACnC,KAAK,EAAE,UAAU,EAAE,CAAC;CACrB;AACD;;;GAGG;AACH,oBAAY,eAAe,GAAG,sBAAsB,GAAG,qBAAqB,GAAG,kBAAkB,GAAG,mBAAmB,GAAG,mBAAmB,GAAG,oBAAoB,CAAC;AAErK;;;GAGG;AACH,MAAM,WAAW,uBAAuB;IACtC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,kBAAkB,CAAC;IACzB,KAAK,EAAE,iBAAiB,CAAC;CAC1B;AACD
|
|
1
|
+
{"version":3,"file":"RulesetVariables.d.ts","sourceRoot":"","sources":["../../../src/presentation-common/RulesetVariables.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RulesetVariables.js","sourceRoot":"","sources":["../../../src/presentation-common/RulesetVariables.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH,sDAAoE;AAEpE;;;GAGG;AACH,IAAY,kBAkBX;AAlBD,WAAY,kBAAkB;IAC5B,oBAAoB;IACpB,iCAAW,CAAA;IAEX,8BAA8B;IAC9B,wCAAkB,CAAA;IAElB,oBAAoB;IACpB,mCAAa,CAAA;IAEb,mBAAmB;IACnB,uCAAiB,CAAA;IAEjB,uBAAuB;IACvB,mCAAa,CAAA;IAEb,iCAAiC;IACjC,0CAAoB,CAAA;AACtB,CAAC,EAlBW,kBAAkB,GAAlB,0BAAkB,KAAlB,0BAAkB,QAkB7B;
|
|
1
|
+
{"version":3,"file":"RulesetVariables.js","sourceRoot":"","sources":["../../../src/presentation-common/RulesetVariables.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH,sDAAoE;AAEpE;;;GAGG;AACH,IAAY,kBAkBX;AAlBD,WAAY,kBAAkB;IAC5B,oBAAoB;IACpB,iCAAW,CAAA;IAEX,8BAA8B;IAC9B,wCAAkB,CAAA;IAElB,oBAAoB;IACpB,mCAAa,CAAA;IAEb,mBAAmB;IACnB,uCAAiB,CAAA;IAEjB,uBAAuB;IACvB,mCAAa,CAAA;IAEb,iCAAiC;IACjC,0CAAoB,CAAA;AACtB,CAAC,EAlBW,kBAAkB,GAAlB,0BAAkB,KAAlB,0BAAkB,QAkB7B;AAkJD,cAAc;AACd,2DAA2D;AAC3D,IAAiB,eAAe,CAoB/B;AApBD,WAAiB,eAAe;IAC9B;;;OAGG;IACH,SAAgB,MAAM,CAAC,QAAyB;QAC9C,IAAI,QAAQ,CAAC,IAAI,KAAK,kBAAkB,CAAC,SAAS;YAChD,OAAO,EAAE,GAAG,QAAQ,EAAE,KAAK,EAAE,gCAAiB,CAAC,aAAa,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QACjF,OAAO,QAAQ,CAAC;IAClB,CAAC;IAJe,sBAAM,SAIrB,CAAA;IAED,iDAAiD;IACjD,SAAgB,QAAQ,CAAC,IAAyB;QAChD,IAAI,IAAI,CAAC,IAAI,KAAK,kBAAkB,CAAC,SAAS,EAAE;YAC9C,IAAI,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ;gBAChC,OAAO,EAAE,GAAG,IAAI,EAAE,KAAK,EAAE,gCAAiB,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;YAC3E,OAAO,IAAW,CAAC,CAAC,kFAAkF;SACvG;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAPe,wBAAQ,WAOvB,CAAA;AACH,CAAC,EApBgB,eAAe,GAAf,uBAAe,KAAf,uBAAe,QAoB/B","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 Core\r\n */\r\n\r\nimport { CompressedId64Set, Id64String } from \"@itwin/core-bentley\";\r\n\r\n/**\r\n * Possible variable value types\r\n * @public\r\n */\r\nexport enum VariableValueTypes {\r\n /** Integer value */\r\n Int = \"int\",\r\n\r\n /** Array of integer values */\r\n IntArray = \"int[]\",\r\n\r\n /** Boolean value */\r\n Bool = \"bool\",\r\n\r\n /** String value */\r\n String = \"string\",\r\n\r\n /** Id64String value */\r\n Id64 = \"id64\",\r\n\r\n /** Array of Id64String values */\r\n Id64Array = \"id64[]\",\r\n}\r\n\r\n/**\r\n * Union of all supported variable value types\r\n * @public\r\n */\r\nexport type VariableValue = boolean | string | number | number[] | Id64String | Id64String[];\r\n\r\n/**\r\n * JSON representation of [[VariableValue]]\r\n * @public\r\n */\r\nexport type VariableValueJSON = boolean | string | number | number[] | Id64String | Id64String[] | CompressedId64Set;\r\n\r\n/**\r\n * Base data structure for representing ruleset variables.\r\n * @public\r\n */\r\nexport interface RulesetVariableBase {\r\n id: string;\r\n type: VariableValueTypes;\r\n value: VariableValue;\r\n}\r\n/**\r\n * Data structure for representing boolean ruleset variables.\r\n * @public\r\n */\r\nexport interface BooleanRulesetVariable extends RulesetVariableBase {\r\n type: VariableValueTypes.Bool;\r\n value: boolean;\r\n}\r\n/**\r\n * Data structure for representing string ruleset variables.\r\n * @public\r\n */\r\nexport interface StringRulesetVariable extends RulesetVariableBase {\r\n type: VariableValueTypes.String;\r\n value: string;\r\n}\r\n/**\r\n * Data structure for representing int ruleset variables.\r\n * @public\r\n */\r\nexport interface IntRulesetVariable extends RulesetVariableBase {\r\n type: VariableValueTypes.Int;\r\n value: number;\r\n}\r\n/**\r\n * Data structure for representing int array ruleset variables.\r\n * @public\r\n */\r\nexport interface IntsRulesetVariable extends RulesetVariableBase {\r\n type: VariableValueTypes.IntArray;\r\n value: number[];\r\n}\r\n/**\r\n * Data structure for representing ID ruleset variables.\r\n * @public\r\n */\r\nexport interface Id64RulesetVariable extends RulesetVariableBase {\r\n type: VariableValueTypes.Id64;\r\n value: Id64String;\r\n}\r\n/**\r\n * Data structure for representing ID array ruleset variables.\r\n * @public\r\n */\r\nexport interface Id64sRulesetVariable extends RulesetVariableBase {\r\n type: VariableValueTypes.Id64Array;\r\n value: Id64String[];\r\n}\r\n/**\r\n * Data structure for representing ruleset variables.\r\n * @public\r\n */\r\nexport type RulesetVariable = BooleanRulesetVariable | StringRulesetVariable | IntRulesetVariable | IntsRulesetVariable | Id64RulesetVariable | Id64sRulesetVariable;\r\n\r\n/**\r\n * JSON representation of [[RulesetVariableBase]].\r\n * @public\r\n */\r\nexport interface RulesetVariableBaseJSON {\r\n id: string;\r\n type: VariableValueTypes;\r\n value: VariableValueJSON;\r\n}\r\n/**\r\n * JSON representation of [[BooleanRulesetVariable]].\r\n * @public\r\n * @deprecated in 3.x. Use [[BooleanRulesetVariable]]\r\n */\r\nexport interface BooleanRulesetVariableJSON extends RulesetVariableBaseJSON {\r\n type: VariableValueTypes.Bool;\r\n value: boolean;\r\n}\r\n/**\r\n * JSON representation of [[StringRulesetVariable]].\r\n * @public\r\n * @deprecated in 3.x. Use [[StringRulesetVariable]]\r\n */\r\nexport interface StringRulesetVariableJSON extends RulesetVariableBaseJSON {\r\n type: VariableValueTypes.String;\r\n value: string;\r\n}\r\n/**\r\n * JSON representation of [[IntRulesetVariable]].\r\n * @public\r\n * @deprecated in 3.x. Use [[IntRulesetVariable]]\r\n */\r\nexport interface IntRulesetVariableJSON extends RulesetVariableBaseJSON {\r\n type: VariableValueTypes.Int;\r\n value: number;\r\n}\r\n/**\r\n * JSON representation of [[IntsRulesetVariable]].\r\n * @public\r\n * @deprecated in 3.x. Use [[IntsRulesetVariable]]\r\n */\r\nexport interface IntsRulesetVariableJSON extends RulesetVariableBaseJSON {\r\n type: VariableValueTypes.IntArray;\r\n value: number[];\r\n}\r\n/**\r\n * JSON representation of [[Id64RulesetVariable]].\r\n * @public\r\n * @deprecated in 3.x. Use [[Id64RulesetVariable]]\r\n */\r\nexport interface Id64RulesetVariableJSON extends RulesetVariableBaseJSON {\r\n type: VariableValueTypes.Id64;\r\n value: Id64String;\r\n}\r\n/**\r\n * JSON representation of [[Id64sRulesetVariable]].\r\n * @public\r\n */\r\nexport interface Id64sRulesetVariableJSON extends RulesetVariableBaseJSON {\r\n type: VariableValueTypes.Id64Array;\r\n value: Id64String[] | CompressedId64Set;\r\n}\r\n/**\r\n * JSON representation of [[RulesetVariable]].\r\n * @public\r\n */\r\n// eslint-disable-next-line deprecation/deprecation\r\nexport type RulesetVariableJSON = BooleanRulesetVariableJSON | StringRulesetVariableJSON | IntRulesetVariableJSON | IntsRulesetVariableJSON | Id64RulesetVariableJSON | Id64sRulesetVariableJSON;\r\n\r\n/** @public */\r\n// eslint-disable-next-line @typescript-eslint/no-redeclare\r\nexport namespace RulesetVariable {\r\n /**\r\n * Serialize given RulesetVariable to JSON.\r\n * Note: In case of [[Id64sRulesetVariable]], this method expects IDs are sorted. See [[OrderedId64Iterable.sortArray]].\r\n */\r\n export function toJSON(variable: RulesetVariable): RulesetVariableJSON {\r\n if (variable.type === VariableValueTypes.Id64Array)\r\n return { ...variable, value: CompressedId64Set.compressArray(variable.value) };\r\n return variable;\r\n }\r\n\r\n /** Deserialize [[RulesetVariable]] from JSON. */\r\n export function fromJSON(json: RulesetVariableJSON): RulesetVariable {\r\n if (json.type === VariableValueTypes.Id64Array) {\r\n if (typeof json.value === \"string\")\r\n return { ...json, value: CompressedId64Set.decompressArray(json.value) };\r\n return json as any; // for some reason TS doesn't understand that `json.value` is always an array here\r\n }\r\n return json;\r\n }\r\n}\r\n"]}
|
|
@@ -40,6 +40,7 @@ export interface HierarchyUpdateRecordJSON {
|
|
|
40
40
|
parent?: NodeKeyJSON;
|
|
41
41
|
nodesCount: number;
|
|
42
42
|
expandedNodes?: ExpandedNodeUpdateRecordJSON[];
|
|
43
|
+
instanceFilter?: string;
|
|
43
44
|
}
|
|
44
45
|
/** @alpha */
|
|
45
46
|
export interface ExpandedNodeUpdateRecord {
|
|
@@ -51,6 +52,7 @@ export interface HierarchyUpdateRecord {
|
|
|
51
52
|
parent?: NodeKey;
|
|
52
53
|
nodesCount: number;
|
|
53
54
|
expandedNodes?: ExpandedNodeUpdateRecord[];
|
|
55
|
+
instanceFilter?: string;
|
|
54
56
|
}
|
|
55
57
|
/** @alpha */
|
|
56
58
|
export declare namespace ExpandedNodeUpdateRecord {
|
|
@@ -82,6 +84,7 @@ export declare type ContentUpdateInfo = typeof UPDATE_FULL;
|
|
|
82
84
|
/**
|
|
83
85
|
* JSON representation of [[PartialHierarchyModification]].
|
|
84
86
|
* @public
|
|
87
|
+
* @deprecated in 3.x. Use [[PartialHierarchyModification]]
|
|
85
88
|
*/
|
|
86
89
|
export declare type PartialHierarchyModificationJSON = NodeInsertionInfoJSON | NodeDeletionInfoJSON | NodeUpdateInfoJSON;
|
|
87
90
|
/**
|
|
@@ -91,9 +94,15 @@ export declare type PartialHierarchyModificationJSON = NodeInsertionInfoJSON | N
|
|
|
91
94
|
export declare type PartialHierarchyModification = NodeInsertionInfo | NodeDeletionInfo | NodeUpdateInfo;
|
|
92
95
|
/** @public */
|
|
93
96
|
export declare namespace PartialHierarchyModification {
|
|
94
|
-
/**
|
|
97
|
+
/**
|
|
98
|
+
* Serialize given object to JSON.
|
|
99
|
+
* @deprecated in 3.x. Use [[PartialHierarchyModification]]
|
|
100
|
+
*/
|
|
95
101
|
function toJSON(obj: PartialHierarchyModification): PartialHierarchyModificationJSON;
|
|
96
|
-
/**
|
|
102
|
+
/**
|
|
103
|
+
* Deserialize given object from JSON
|
|
104
|
+
* @deprecated in 3.x. Use [[PartialHierarchyModification]]
|
|
105
|
+
*/
|
|
97
106
|
function fromJSON(json: PartialHierarchyModificationJSON): PartialHierarchyModification;
|
|
98
107
|
}
|
|
99
108
|
/**
|
|
@@ -112,6 +121,7 @@ export interface NodeInsertionInfo {
|
|
|
112
121
|
/**
|
|
113
122
|
* JSON representation of [[NodeInsertionInfo]].
|
|
114
123
|
* @public
|
|
124
|
+
* @deprecated in 3.x. Use [[NodeInsertionInfo]]
|
|
115
125
|
*/
|
|
116
126
|
export interface NodeInsertionInfoJSON {
|
|
117
127
|
type: "Insert";
|
|
@@ -133,6 +143,7 @@ export interface NodeDeletionInfo {
|
|
|
133
143
|
/**
|
|
134
144
|
* JSON representation of [[NodeDeletionInfo]].
|
|
135
145
|
* @public
|
|
146
|
+
* @deprecated in 3.x. Use [[NodeDeletionInfo]]
|
|
136
147
|
*/
|
|
137
148
|
export interface NodeDeletionInfoJSON {
|
|
138
149
|
type: "Delete";
|
|
@@ -155,6 +166,7 @@ export interface NodeUpdateInfo {
|
|
|
155
166
|
/**
|
|
156
167
|
* JSON representation of [[NodeUpdateInfo]].
|
|
157
168
|
* @public
|
|
169
|
+
* @deprecated in 3.x. Use [[NodeUpdateInfo]]
|
|
158
170
|
*/
|
|
159
171
|
export interface NodeUpdateInfoJSON {
|
|
160
172
|
type: "Update";
|
|
@@ -164,6 +176,7 @@ export interface NodeUpdateInfoJSON {
|
|
|
164
176
|
/**
|
|
165
177
|
* JSON representation of [[HierarchyCompareInfo]].
|
|
166
178
|
* @public
|
|
179
|
+
* @deprecated in 3.x. Use [[HierarchyCompareInfo]].
|
|
167
180
|
*/
|
|
168
181
|
export interface HierarchyCompareInfoJSON {
|
|
169
182
|
changes: PartialHierarchyModificationJSON[];
|
|
@@ -187,9 +200,15 @@ export interface HierarchyCompareInfo {
|
|
|
187
200
|
}
|
|
188
201
|
/** @public */
|
|
189
202
|
export declare namespace HierarchyCompareInfo {
|
|
190
|
-
/**
|
|
203
|
+
/**
|
|
204
|
+
* Serialize given object to JSON.
|
|
205
|
+
* @deprecated in 3.x. Use [[HierarchyCompareInfo]]
|
|
206
|
+
*/
|
|
191
207
|
function toJSON(obj: HierarchyCompareInfo): HierarchyCompareInfoJSON;
|
|
192
|
-
/**
|
|
208
|
+
/**
|
|
209
|
+
* Deserialize given object from JSON
|
|
210
|
+
* @deprecated in 3.x. Use [[HierarchyCompareInfo]]
|
|
211
|
+
*/
|
|
193
212
|
function fromJSON(json: HierarchyCompareInfoJSON): HierarchyCompareInfo;
|
|
194
213
|
}
|
|
195
214
|
//# sourceMappingURL=Update.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Update.d.ts","sourceRoot":"","sources":["../../../src/presentation-common/Update.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAEhF,aAAa;AACb,eAAO,MAAM,WAAW,SAAS,CAAC;AAElC,aAAa;AACb,MAAM,WAAW,cAAc;IAC7B,CAAC,MAAM,EAAE,MAAM,GAAG;QAChB,CAAC,SAAS,EAAE,MAAM,GAAG;YACnB,SAAS,CAAC,EAAE,uBAAuB,CAAC;YACpC,OAAO,CAAC,EAAE,iBAAiB,CAAC;SAC7B,CAAC;KACH,CAAC;CACH;AAED,aAAa;AACb,MAAM,WAAW,UAAU;IACzB,CAAC,MAAM,EAAE,MAAM,GAAG;QAChB,CAAC,SAAS,EAAE,MAAM,GAAG;YACnB,SAAS,CAAC,EAAE,mBAAmB,CAAC;YAChC,OAAO,CAAC,EAAE,iBAAiB,CAAC;SAC7B,CAAC;KACH,CAAC;CACH;AAED,aAAa;AACb,yBAAiB,UAAU,CAAC;IAC1B,sCAAsC;IACtC,SAAgB,MAAM,CAAC,GAAG,EAAE,UAAU,GAAG,cAAc,CAqBtD;IAED,yCAAyC;IACzC,SAAgB,QAAQ,CAAC,IAAI,EAAE,cAAc,GAAG,UAAU,CAqBzD;CACF;AAED,aAAa;AACb,MAAM,WAAW,4BAA4B;
|
|
1
|
+
{"version":3,"file":"Update.d.ts","sourceRoot":"","sources":["../../../src/presentation-common/Update.ts"],"names":[],"mappings":"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"}
|
|
@@ -67,6 +67,7 @@ var ExpandedNodeUpdateRecord;
|
|
|
67
67
|
function toJSON(obj) {
|
|
68
68
|
return {
|
|
69
69
|
...obj,
|
|
70
|
+
// eslint-disable-next-line deprecation/deprecation
|
|
70
71
|
node: Node_1.Node.toJSON(obj.node),
|
|
71
72
|
};
|
|
72
73
|
}
|
|
@@ -75,6 +76,7 @@ var ExpandedNodeUpdateRecord;
|
|
|
75
76
|
function fromJSON(json) {
|
|
76
77
|
return {
|
|
77
78
|
...json,
|
|
79
|
+
// eslint-disable-next-line deprecation/deprecation
|
|
78
80
|
node: Node_1.Node.fromJSON(json.node),
|
|
79
81
|
};
|
|
80
82
|
}
|
|
@@ -87,6 +89,7 @@ var HierarchyUpdateRecord;
|
|
|
87
89
|
function toJSON(obj) {
|
|
88
90
|
return {
|
|
89
91
|
...obj,
|
|
92
|
+
// eslint-disable-next-line deprecation/deprecation
|
|
90
93
|
parent: obj.parent ? Key_1.NodeKey.toJSON(obj.parent) : undefined,
|
|
91
94
|
expandedNodes: obj.expandedNodes ? obj.expandedNodes.map(ExpandedNodeUpdateRecord.toJSON) : undefined,
|
|
92
95
|
};
|
|
@@ -96,6 +99,7 @@ var HierarchyUpdateRecord;
|
|
|
96
99
|
function fromJSON(json) {
|
|
97
100
|
return {
|
|
98
101
|
...json,
|
|
102
|
+
// eslint-disable-next-line deprecation/deprecation
|
|
99
103
|
parent: json.parent ? Key_1.NodeKey.fromJSON(json.parent) : undefined,
|
|
100
104
|
expandedNodes: json.expandedNodes ? json.expandedNodes.map(ExpandedNodeUpdateRecord.fromJSON) : undefined,
|
|
101
105
|
};
|
|
@@ -123,50 +127,66 @@ var HierarchyUpdateInfo;
|
|
|
123
127
|
/** @public */
|
|
124
128
|
var PartialHierarchyModification;
|
|
125
129
|
(function (PartialHierarchyModification) {
|
|
126
|
-
/**
|
|
130
|
+
/**
|
|
131
|
+
* Serialize given object to JSON.
|
|
132
|
+
* @deprecated in 3.x. Use [[PartialHierarchyModification]]
|
|
133
|
+
*/
|
|
134
|
+
// eslint-disable-next-line deprecation/deprecation
|
|
127
135
|
function toJSON(obj) {
|
|
128
136
|
switch (obj.type) {
|
|
129
137
|
case "Insert":
|
|
130
138
|
return {
|
|
131
139
|
type: "Insert",
|
|
140
|
+
// eslint-disable-next-line deprecation/deprecation
|
|
132
141
|
parent: obj.parent === undefined ? undefined : Key_1.NodeKey.toJSON(obj.parent),
|
|
133
142
|
position: obj.position,
|
|
143
|
+
// eslint-disable-next-line deprecation/deprecation
|
|
134
144
|
node: Node_1.Node.toJSON(obj.node),
|
|
135
145
|
};
|
|
136
146
|
case "Update":
|
|
137
147
|
return {
|
|
138
148
|
type: "Update",
|
|
149
|
+
// eslint-disable-next-line deprecation/deprecation
|
|
139
150
|
target: Key_1.NodeKey.toJSON(obj.target),
|
|
140
151
|
changes: Node_1.Node.toPartialJSON(obj.changes),
|
|
141
152
|
};
|
|
142
153
|
case "Delete":
|
|
143
154
|
return {
|
|
144
155
|
type: "Delete",
|
|
156
|
+
// eslint-disable-next-line deprecation/deprecation
|
|
145
157
|
parent: obj.parent === undefined ? undefined : Key_1.NodeKey.toJSON(obj.parent),
|
|
146
158
|
position: obj.position,
|
|
147
159
|
};
|
|
148
160
|
}
|
|
149
161
|
}
|
|
150
162
|
PartialHierarchyModification.toJSON = toJSON;
|
|
151
|
-
/**
|
|
163
|
+
/**
|
|
164
|
+
* Deserialize given object from JSON
|
|
165
|
+
* @deprecated in 3.x. Use [[PartialHierarchyModification]]
|
|
166
|
+
*/
|
|
167
|
+
// eslint-disable-next-line deprecation/deprecation
|
|
152
168
|
function fromJSON(json) {
|
|
153
169
|
switch (json.type) {
|
|
154
170
|
case "Insert":
|
|
155
171
|
return {
|
|
156
172
|
type: "Insert",
|
|
173
|
+
// eslint-disable-next-line deprecation/deprecation
|
|
157
174
|
parent: json.parent === undefined ? undefined : Key_1.NodeKey.fromJSON(json.parent),
|
|
158
175
|
position: json.position,
|
|
176
|
+
// eslint-disable-next-line deprecation/deprecation
|
|
159
177
|
node: Node_1.Node.fromJSON(json.node),
|
|
160
178
|
};
|
|
161
179
|
case "Update":
|
|
162
180
|
return {
|
|
163
181
|
type: "Update",
|
|
182
|
+
// eslint-disable-next-line deprecation/deprecation
|
|
164
183
|
target: Key_1.NodeKey.fromJSON(json.target),
|
|
165
184
|
changes: Node_1.Node.fromPartialJSON(json.changes),
|
|
166
185
|
};
|
|
167
186
|
case "Delete":
|
|
168
187
|
return {
|
|
169
188
|
type: "Delete",
|
|
189
|
+
// eslint-disable-next-line deprecation/deprecation
|
|
170
190
|
parent: json.parent === undefined ? undefined : Key_1.NodeKey.fromJSON(json.parent),
|
|
171
191
|
position: json.position,
|
|
172
192
|
};
|
|
@@ -177,18 +197,28 @@ var PartialHierarchyModification;
|
|
|
177
197
|
/** @public */
|
|
178
198
|
var HierarchyCompareInfo;
|
|
179
199
|
(function (HierarchyCompareInfo) {
|
|
180
|
-
/**
|
|
200
|
+
/**
|
|
201
|
+
* Serialize given object to JSON.
|
|
202
|
+
* @deprecated in 3.x. Use [[HierarchyCompareInfo]]
|
|
203
|
+
*/
|
|
204
|
+
// eslint-disable-next-line deprecation/deprecation
|
|
181
205
|
function toJSON(obj) {
|
|
182
206
|
return {
|
|
183
207
|
...obj,
|
|
208
|
+
// eslint-disable-next-line deprecation/deprecation
|
|
184
209
|
changes: obj.changes.map((change) => PartialHierarchyModification.toJSON(change)),
|
|
185
210
|
};
|
|
186
211
|
}
|
|
187
212
|
HierarchyCompareInfo.toJSON = toJSON;
|
|
188
|
-
/**
|
|
213
|
+
/**
|
|
214
|
+
* Deserialize given object from JSON
|
|
215
|
+
* @deprecated in 3.x. Use [[HierarchyCompareInfo]]
|
|
216
|
+
*/
|
|
217
|
+
// eslint-disable-next-line deprecation/deprecation
|
|
189
218
|
function fromJSON(json) {
|
|
190
219
|
return {
|
|
191
220
|
...json,
|
|
221
|
+
// eslint-disable-next-line deprecation/deprecation
|
|
192
222
|
changes: json.changes.map((change) => PartialHierarchyModification.fromJSON(change)),
|
|
193
223
|
};
|
|
194
224
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Update.js","sourceRoot":"","sources":["../../../src/presentation-common/Update.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 Core\r\n */\r\n\r\nimport { NodeKey, NodeKeyJSON } from \"./hierarchy/Key\";\r\nimport { Node, NodeJSON, PartialNode, PartialNodeJSON } from \"./hierarchy/Node\";\r\n\r\n/** @alpha */\r\nexport const UPDATE_FULL = \"FULL\";\r\n\r\n/** @alpha */\r\nexport interface UpdateInfoJSON {\r\n [imodel: string]: {\r\n [rulesetId: string]: {\r\n hierarchy?: HierarchyUpdateInfoJSON;\r\n content?: ContentUpdateInfo;\r\n };\r\n };\r\n}\r\n\r\n/** @alpha */\r\nexport interface UpdateInfo {\r\n [imodel: string]: {\r\n [rulesetId: string]: {\r\n hierarchy?: HierarchyUpdateInfo;\r\n content?: ContentUpdateInfo;\r\n };\r\n };\r\n}\r\n\r\n/** @alpha */\r\nexport namespace UpdateInfo {\r\n /** Serialize given object to JSON. */\r\n export function toJSON(obj: UpdateInfo): UpdateInfoJSON {\r\n const json: UpdateInfoJSON = {};\r\n for (const imodel in obj) {\r\n // istanbul ignore if\r\n if (!obj.hasOwnProperty(imodel))\r\n continue;\r\n\r\n json[imodel] = {};\r\n const rulesetObj = obj[imodel];\r\n for (const rulesetId in rulesetObj) {\r\n // istanbul ignore if\r\n if (!rulesetObj.hasOwnProperty(rulesetId))\r\n continue;\r\n\r\n json[imodel][rulesetId] = {\r\n hierarchy: rulesetObj[rulesetId].hierarchy ? HierarchyUpdateInfo.toJSON(rulesetObj[rulesetId].hierarchy!) : undefined,\r\n content: rulesetObj[rulesetId].content,\r\n };\r\n }\r\n }\r\n return json;\r\n }\r\n\r\n /** Deserialize given object from JSON */\r\n export function fromJSON(json: UpdateInfoJSON): UpdateInfo {\r\n const obj: UpdateInfo = {};\r\n for (const imodel in json) {\r\n // istanbul ignore if\r\n if (!json.hasOwnProperty(imodel))\r\n continue;\r\n\r\n obj[imodel] = {};\r\n const rulesetJson = json[imodel];\r\n for (const rulesetId in rulesetJson) {\r\n // istanbul ignore if\r\n if (!rulesetJson.hasOwnProperty(rulesetId))\r\n continue;\r\n\r\n obj[imodel][rulesetId] = {\r\n hierarchy: rulesetJson[rulesetId].hierarchy ? HierarchyUpdateInfo.fromJSON(rulesetJson[rulesetId].hierarchy!) : undefined,\r\n content: rulesetJson[rulesetId].content,\r\n };\r\n }\r\n }\r\n return obj;\r\n }\r\n}\r\n\r\n/** @alpha */\r\nexport interface ExpandedNodeUpdateRecordJSON {\r\n node: NodeJSON;\r\n position: number;\r\n}\r\n\r\n/** @alpha */\r\nexport interface HierarchyUpdateRecordJSON {\r\n parent?: NodeKeyJSON;\r\n nodesCount: number;\r\n expandedNodes?: ExpandedNodeUpdateRecordJSON[];\r\n}\r\n\r\n/** @alpha */\r\nexport interface ExpandedNodeUpdateRecord {\r\n node: Node;\r\n position: number;\r\n}\r\n\r\n/** @alpha */\r\nexport interface HierarchyUpdateRecord {\r\n parent?: NodeKey;\r\n nodesCount: number;\r\n expandedNodes?: ExpandedNodeUpdateRecord[];\r\n}\r\n\r\n/** @alpha */\r\nexport namespace ExpandedNodeUpdateRecord { // eslint-disable-line @typescript-eslint/no-redeclare\r\n /** Serialize given object to JSON. */\r\n export function toJSON(obj: ExpandedNodeUpdateRecord): ExpandedNodeUpdateRecordJSON {\r\n return {\r\n ...obj,\r\n node: Node.toJSON(obj.node),\r\n };\r\n }\r\n\r\n /** Deserialize given object from JSON */\r\n export function fromJSON(json: ExpandedNodeUpdateRecordJSON): ExpandedNodeUpdateRecord {\r\n return {\r\n ...json,\r\n node: Node.fromJSON(json.node),\r\n };\r\n }\r\n}\r\n\r\n/** @alpha */\r\nexport namespace HierarchyUpdateRecord { // eslint-disable-line @typescript-eslint/no-redeclare\r\n /** Serialize given object to JSON. */\r\n export function toJSON(obj: HierarchyUpdateRecord): HierarchyUpdateRecordJSON {\r\n return {\r\n ...obj,\r\n parent: obj.parent ? NodeKey.toJSON(obj.parent) : undefined,\r\n expandedNodes: obj.expandedNodes ? obj.expandedNodes.map(ExpandedNodeUpdateRecord.toJSON) : undefined,\r\n };\r\n }\r\n\r\n /** Deserialize given object from JSON */\r\n export function fromJSON(json: HierarchyUpdateRecordJSON): HierarchyUpdateRecord {\r\n return {\r\n ...json,\r\n parent: json.parent ? NodeKey.fromJSON(json.parent) : undefined,\r\n expandedNodes: json.expandedNodes ? json.expandedNodes.map(ExpandedNodeUpdateRecord.fromJSON) : undefined,\r\n };\r\n }\r\n}\r\n\r\n/** @alpha */\r\nexport type HierarchyUpdateInfoJSON = typeof UPDATE_FULL | HierarchyUpdateRecordJSON[];\r\n\r\n/** @alpha */\r\nexport type HierarchyUpdateInfo = typeof UPDATE_FULL | HierarchyUpdateRecord[];\r\n\r\n/** @alpha */\r\nexport namespace HierarchyUpdateInfo { // eslint-disable-line @typescript-eslint/no-redeclare\r\n /** Serialize given object to JSON. */\r\n export function toJSON(obj: HierarchyUpdateInfo): HierarchyUpdateInfoJSON {\r\n if (typeof obj === \"string\")\r\n return obj;\r\n return obj.map(HierarchyUpdateRecord.toJSON);\r\n }\r\n\r\n /** Deserialize given object from JSON */\r\n export function fromJSON(json: HierarchyUpdateInfoJSON): HierarchyUpdateInfo {\r\n if (typeof json === \"string\")\r\n return json;\r\n return json.map(HierarchyUpdateRecord.fromJSON);\r\n }\r\n}\r\n\r\n/** @alpha */\r\nexport type ContentUpdateInfo = typeof UPDATE_FULL;\r\n\r\n/**\r\n * JSON representation of [[PartialHierarchyModification]].\r\n * @public\r\n */\r\nexport type PartialHierarchyModificationJSON = NodeInsertionInfoJSON | NodeDeletionInfoJSON | NodeUpdateInfoJSON;\r\n\r\n/**\r\n * Information about a hierarchy change: insertion, deletion or node update.\r\n * @public\r\n */\r\nexport type PartialHierarchyModification = NodeInsertionInfo | NodeDeletionInfo | NodeUpdateInfo;\r\n\r\n/** @public */\r\nexport namespace PartialHierarchyModification { // eslint-disable-line @typescript-eslint/no-redeclare\r\n /** Serialize given object to JSON. */\r\n export function toJSON(obj: PartialHierarchyModification): PartialHierarchyModificationJSON {\r\n switch (obj.type) {\r\n case \"Insert\":\r\n return {\r\n type: \"Insert\",\r\n parent: obj.parent === undefined ? undefined : NodeKey.toJSON(obj.parent),\r\n position: obj.position,\r\n node: Node.toJSON(obj.node),\r\n };\r\n\r\n case \"Update\":\r\n return {\r\n type: \"Update\",\r\n target: NodeKey.toJSON(obj.target),\r\n changes: Node.toPartialJSON(obj.changes),\r\n };\r\n\r\n case \"Delete\":\r\n return {\r\n type: \"Delete\",\r\n parent: obj.parent === undefined ? undefined : NodeKey.toJSON(obj.parent),\r\n position: obj.position,\r\n };\r\n }\r\n }\r\n\r\n /** Deserialize given object from JSON */\r\n export function fromJSON(json: PartialHierarchyModificationJSON): PartialHierarchyModification {\r\n switch (json.type) {\r\n case \"Insert\":\r\n return {\r\n type: \"Insert\",\r\n parent: json.parent === undefined ? undefined : NodeKey.fromJSON(json.parent),\r\n position: json.position,\r\n node: Node.fromJSON(json.node),\r\n };\r\n\r\n case \"Update\":\r\n return {\r\n type: \"Update\",\r\n target: NodeKey.fromJSON(json.target),\r\n changes: Node.fromPartialJSON(json.changes),\r\n };\r\n\r\n case \"Delete\":\r\n return {\r\n type: \"Delete\",\r\n parent: json.parent === undefined ? undefined : NodeKey.fromJSON(json.parent),\r\n position: json.position,\r\n };\r\n }\r\n }\r\n}\r\n\r\n/**\r\n * Information about node insertion.\r\n * @public\r\n */\r\nexport interface NodeInsertionInfo {\r\n type: \"Insert\";\r\n /** Parent node key */\r\n parent?: NodeKey;\r\n /** Index of the new node under its parent */\r\n position: number;\r\n /** Inserted node */\r\n node: Node;\r\n}\r\n\r\n/**\r\n * JSON representation of [[NodeInsertionInfo]].\r\n * @public\r\n */\r\nexport interface NodeInsertionInfoJSON {\r\n type: \"Insert\";\r\n parent?: NodeKeyJSON;\r\n position: number;\r\n node: NodeJSON;\r\n}\r\n\r\n/**\r\n * Information about node deletion.\r\n * @public\r\n */\r\nexport interface NodeDeletionInfo {\r\n type: \"Delete\";\r\n /** Parent of the deleted node */\r\n parent?: NodeKey;\r\n /** Position of the deleted node among its siblings in the initial, not updated tree */\r\n position: number;\r\n}\r\n\r\n/**\r\n * JSON representation of [[NodeDeletionInfo]].\r\n * @public\r\n */\r\nexport interface NodeDeletionInfoJSON {\r\n type: \"Delete\";\r\n /** Parent of the deleted node */\r\n parent?: NodeKeyJSON;\r\n /** Position of the deleted node among its siblings in the initial, not updated tree */\r\n position: number;\r\n}\r\n\r\n/**\r\n * Information about node update.\r\n * @public\r\n */\r\nexport interface NodeUpdateInfo {\r\n type: \"Update\";\r\n /** Key of the updated node */\r\n target: NodeKey;\r\n /** Updated node attributes */\r\n changes: PartialNode;\r\n}\r\n\r\n/**\r\n * JSON representation of [[NodeUpdateInfo]].\r\n * @public\r\n */\r\nexport interface NodeUpdateInfoJSON {\r\n type: \"Update\";\r\n target: NodeKeyJSON;\r\n changes: PartialNodeJSON;\r\n}\r\n\r\n/**\r\n * JSON representation of [[HierarchyCompareInfo]].\r\n * @public\r\n */\r\nexport interface HierarchyCompareInfoJSON {\r\n changes: PartialHierarchyModificationJSON[];\r\n continuationToken?: {\r\n prevHierarchyNode: string;\r\n currHierarchyNode: string;\r\n };\r\n}\r\n\r\n/**\r\n * Information about hierarchy modification / differences.\r\n * @public\r\n */\r\nexport interface HierarchyCompareInfo {\r\n /** A list of hierarchy changes */\r\n changes: PartialHierarchyModification[];\r\n /** Continuation token for requesting more changes. */\r\n continuationToken?: {\r\n prevHierarchyNode: string;\r\n currHierarchyNode: string;\r\n };\r\n}\r\n\r\n/** @public */\r\nexport namespace HierarchyCompareInfo {\r\n /** Serialize given object to JSON. */\r\n export function toJSON(obj: HierarchyCompareInfo): HierarchyCompareInfoJSON {\r\n return {\r\n ...obj,\r\n changes: obj.changes.map((change) => PartialHierarchyModification.toJSON(change)),\r\n };\r\n }\r\n\r\n /** Deserialize given object from JSON */\r\n export function fromJSON(json: HierarchyCompareInfoJSON): HierarchyCompareInfo {\r\n return {\r\n ...json,\r\n changes: json.changes.map((change) => PartialHierarchyModification.fromJSON(change)),\r\n };\r\n }\r\n}\r\n"]}
|
|
1
|
+
{"version":3,"file":"Update.js","sourceRoot":"","sources":["../../../src/presentation-common/Update.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 Core\r\n */\r\n\r\nimport { NodeKey, NodeKeyJSON } from \"./hierarchy/Key\";\r\nimport { Node, NodeJSON, PartialNode, PartialNodeJSON } from \"./hierarchy/Node\";\r\n\r\n/** @alpha */\r\nexport const UPDATE_FULL = \"FULL\";\r\n\r\n/** @alpha */\r\nexport interface UpdateInfoJSON {\r\n [imodel: string]: {\r\n [rulesetId: string]: {\r\n hierarchy?: HierarchyUpdateInfoJSON;\r\n content?: ContentUpdateInfo;\r\n };\r\n };\r\n}\r\n\r\n/** @alpha */\r\nexport interface UpdateInfo {\r\n [imodel: string]: {\r\n [rulesetId: string]: {\r\n hierarchy?: HierarchyUpdateInfo;\r\n content?: ContentUpdateInfo;\r\n };\r\n };\r\n}\r\n\r\n/** @alpha */\r\nexport namespace UpdateInfo {\r\n /** Serialize given object to JSON. */\r\n export function toJSON(obj: UpdateInfo): UpdateInfoJSON {\r\n const json: UpdateInfoJSON = {};\r\n for (const imodel in obj) {\r\n // istanbul ignore if\r\n if (!obj.hasOwnProperty(imodel))\r\n continue;\r\n\r\n json[imodel] = {};\r\n const rulesetObj = obj[imodel];\r\n for (const rulesetId in rulesetObj) {\r\n // istanbul ignore if\r\n if (!rulesetObj.hasOwnProperty(rulesetId))\r\n continue;\r\n\r\n json[imodel][rulesetId] = {\r\n hierarchy: rulesetObj[rulesetId].hierarchy ? HierarchyUpdateInfo.toJSON(rulesetObj[rulesetId].hierarchy!) : undefined,\r\n content: rulesetObj[rulesetId].content,\r\n };\r\n }\r\n }\r\n return json;\r\n }\r\n\r\n /** Deserialize given object from JSON */\r\n export function fromJSON(json: UpdateInfoJSON): UpdateInfo {\r\n const obj: UpdateInfo = {};\r\n for (const imodel in json) {\r\n // istanbul ignore if\r\n if (!json.hasOwnProperty(imodel))\r\n continue;\r\n\r\n obj[imodel] = {};\r\n const rulesetJson = json[imodel];\r\n for (const rulesetId in rulesetJson) {\r\n // istanbul ignore if\r\n if (!rulesetJson.hasOwnProperty(rulesetId))\r\n continue;\r\n\r\n obj[imodel][rulesetId] = {\r\n hierarchy: rulesetJson[rulesetId].hierarchy ? HierarchyUpdateInfo.fromJSON(rulesetJson[rulesetId].hierarchy!) : undefined,\r\n content: rulesetJson[rulesetId].content,\r\n };\r\n }\r\n }\r\n return obj;\r\n }\r\n}\r\n\r\n/** @alpha */\r\nexport interface ExpandedNodeUpdateRecordJSON {\r\n // eslint-disable-next-line deprecation/deprecation\r\n node: NodeJSON;\r\n position: number;\r\n}\r\n\r\n/** @alpha */\r\nexport interface HierarchyUpdateRecordJSON {\r\n // eslint-disable-next-line deprecation/deprecation\r\n parent?: NodeKeyJSON;\r\n nodesCount: number;\r\n expandedNodes?: ExpandedNodeUpdateRecordJSON[];\r\n instanceFilter?: string;\r\n}\r\n\r\n/** @alpha */\r\nexport interface ExpandedNodeUpdateRecord {\r\n node: Node;\r\n position: number;\r\n}\r\n\r\n/** @alpha */\r\nexport interface HierarchyUpdateRecord {\r\n parent?: NodeKey;\r\n nodesCount: number;\r\n expandedNodes?: ExpandedNodeUpdateRecord[];\r\n instanceFilter?: string;\r\n}\r\n\r\n/** @alpha */\r\nexport namespace ExpandedNodeUpdateRecord { // eslint-disable-line @typescript-eslint/no-redeclare\r\n /** Serialize given object to JSON. */\r\n export function toJSON(obj: ExpandedNodeUpdateRecord): ExpandedNodeUpdateRecordJSON {\r\n return {\r\n ...obj,\r\n // eslint-disable-next-line deprecation/deprecation\r\n node: Node.toJSON(obj.node),\r\n };\r\n }\r\n\r\n /** Deserialize given object from JSON */\r\n export function fromJSON(json: ExpandedNodeUpdateRecordJSON): ExpandedNodeUpdateRecord {\r\n return {\r\n ...json,\r\n // eslint-disable-next-line deprecation/deprecation\r\n node: Node.fromJSON(json.node),\r\n };\r\n }\r\n}\r\n\r\n/** @alpha */\r\nexport namespace HierarchyUpdateRecord { // eslint-disable-line @typescript-eslint/no-redeclare\r\n /** Serialize given object to JSON. */\r\n export function toJSON(obj: HierarchyUpdateRecord): HierarchyUpdateRecordJSON {\r\n return {\r\n ...obj,\r\n // eslint-disable-next-line deprecation/deprecation\r\n parent: obj.parent ? NodeKey.toJSON(obj.parent) : undefined,\r\n expandedNodes: obj.expandedNodes ? obj.expandedNodes.map(ExpandedNodeUpdateRecord.toJSON) : undefined,\r\n };\r\n }\r\n\r\n /** Deserialize given object from JSON */\r\n export function fromJSON(json: HierarchyUpdateRecordJSON): HierarchyUpdateRecord {\r\n return {\r\n ...json,\r\n // eslint-disable-next-line deprecation/deprecation\r\n parent: json.parent ? NodeKey.fromJSON(json.parent) : undefined,\r\n expandedNodes: json.expandedNodes ? json.expandedNodes.map(ExpandedNodeUpdateRecord.fromJSON) : undefined,\r\n };\r\n }\r\n}\r\n\r\n/** @alpha */\r\nexport type HierarchyUpdateInfoJSON = typeof UPDATE_FULL | HierarchyUpdateRecordJSON[];\r\n\r\n/** @alpha */\r\nexport type HierarchyUpdateInfo = typeof UPDATE_FULL | HierarchyUpdateRecord[];\r\n\r\n/** @alpha */\r\nexport namespace HierarchyUpdateInfo { // eslint-disable-line @typescript-eslint/no-redeclare\r\n /** Serialize given object to JSON. */\r\n export function toJSON(obj: HierarchyUpdateInfo): HierarchyUpdateInfoJSON {\r\n if (typeof obj === \"string\")\r\n return obj;\r\n return obj.map(HierarchyUpdateRecord.toJSON);\r\n }\r\n\r\n /** Deserialize given object from JSON */\r\n export function fromJSON(json: HierarchyUpdateInfoJSON): HierarchyUpdateInfo {\r\n if (typeof json === \"string\")\r\n return json;\r\n return json.map(HierarchyUpdateRecord.fromJSON);\r\n }\r\n}\r\n\r\n/** @alpha */\r\nexport type ContentUpdateInfo = typeof UPDATE_FULL;\r\n\r\n/**\r\n * JSON representation of [[PartialHierarchyModification]].\r\n * @public\r\n * @deprecated in 3.x. Use [[PartialHierarchyModification]]\r\n */\r\n// eslint-disable-next-line deprecation/deprecation\r\nexport type PartialHierarchyModificationJSON = NodeInsertionInfoJSON | NodeDeletionInfoJSON | NodeUpdateInfoJSON;\r\n\r\n/**\r\n * Information about a hierarchy change: insertion, deletion or node update.\r\n * @public\r\n */\r\nexport type PartialHierarchyModification = NodeInsertionInfo | NodeDeletionInfo | NodeUpdateInfo;\r\n\r\n/** @public */\r\nexport namespace PartialHierarchyModification { // eslint-disable-line @typescript-eslint/no-redeclare\r\n /**\r\n * Serialize given object to JSON.\r\n * @deprecated in 3.x. Use [[PartialHierarchyModification]]\r\n */\r\n // eslint-disable-next-line deprecation/deprecation\r\n export function toJSON(obj: PartialHierarchyModification): PartialHierarchyModificationJSON {\r\n switch (obj.type) {\r\n case \"Insert\":\r\n return {\r\n type: \"Insert\",\r\n // eslint-disable-next-line deprecation/deprecation\r\n parent: obj.parent === undefined ? undefined : NodeKey.toJSON(obj.parent),\r\n position: obj.position,\r\n // eslint-disable-next-line deprecation/deprecation\r\n node: Node.toJSON(obj.node),\r\n };\r\n\r\n case \"Update\":\r\n return {\r\n type: \"Update\",\r\n // eslint-disable-next-line deprecation/deprecation\r\n target: NodeKey.toJSON(obj.target),\r\n changes: Node.toPartialJSON(obj.changes),\r\n };\r\n\r\n case \"Delete\":\r\n return {\r\n type: \"Delete\",\r\n // eslint-disable-next-line deprecation/deprecation\r\n parent: obj.parent === undefined ? undefined : NodeKey.toJSON(obj.parent),\r\n position: obj.position,\r\n };\r\n }\r\n }\r\n\r\n /**\r\n * Deserialize given object from JSON\r\n * @deprecated in 3.x. Use [[PartialHierarchyModification]]\r\n */\r\n // eslint-disable-next-line deprecation/deprecation\r\n export function fromJSON(json: PartialHierarchyModificationJSON): PartialHierarchyModification {\r\n switch (json.type) {\r\n case \"Insert\":\r\n return {\r\n type: \"Insert\",\r\n // eslint-disable-next-line deprecation/deprecation\r\n parent: json.parent === undefined ? undefined : NodeKey.fromJSON(json.parent),\r\n position: json.position,\r\n // eslint-disable-next-line deprecation/deprecation\r\n node: Node.fromJSON(json.node),\r\n };\r\n\r\n case \"Update\":\r\n return {\r\n type: \"Update\",\r\n // eslint-disable-next-line deprecation/deprecation\r\n target: NodeKey.fromJSON(json.target),\r\n changes: Node.fromPartialJSON(json.changes),\r\n };\r\n\r\n case \"Delete\":\r\n return {\r\n type: \"Delete\",\r\n // eslint-disable-next-line deprecation/deprecation\r\n parent: json.parent === undefined ? undefined : NodeKey.fromJSON(json.parent),\r\n position: json.position,\r\n };\r\n }\r\n }\r\n}\r\n\r\n/**\r\n * Information about node insertion.\r\n * @public\r\n */\r\nexport interface NodeInsertionInfo {\r\n type: \"Insert\";\r\n /** Parent node key */\r\n parent?: NodeKey;\r\n /** Index of the new node under its parent */\r\n position: number;\r\n /** Inserted node */\r\n node: Node;\r\n}\r\n\r\n/**\r\n * JSON representation of [[NodeInsertionInfo]].\r\n * @public\r\n * @deprecated in 3.x. Use [[NodeInsertionInfo]]\r\n */\r\nexport interface NodeInsertionInfoJSON {\r\n type: \"Insert\";\r\n // eslint-disable-next-line deprecation/deprecation\r\n parent?: NodeKeyJSON;\r\n position: number;\r\n // eslint-disable-next-line deprecation/deprecation\r\n node: NodeJSON;\r\n}\r\n\r\n/**\r\n * Information about node deletion.\r\n * @public\r\n */\r\nexport interface NodeDeletionInfo {\r\n type: \"Delete\";\r\n /** Parent of the deleted node */\r\n parent?: NodeKey;\r\n /** Position of the deleted node among its siblings in the initial, not updated tree */\r\n position: number;\r\n}\r\n\r\n/**\r\n * JSON representation of [[NodeDeletionInfo]].\r\n * @public\r\n * @deprecated in 3.x. Use [[NodeDeletionInfo]]\r\n */\r\nexport interface NodeDeletionInfoJSON {\r\n type: \"Delete\";\r\n /** Parent of the deleted node */\r\n // eslint-disable-next-line deprecation/deprecation\r\n parent?: NodeKeyJSON;\r\n /** Position of the deleted node among its siblings in the initial, not updated tree */\r\n position: number;\r\n}\r\n\r\n/**\r\n * Information about node update.\r\n * @public\r\n */\r\nexport interface NodeUpdateInfo {\r\n type: \"Update\";\r\n /** Key of the updated node */\r\n target: NodeKey;\r\n /** Updated node attributes */\r\n changes: PartialNode;\r\n}\r\n\r\n/**\r\n * JSON representation of [[NodeUpdateInfo]].\r\n * @public\r\n * @deprecated in 3.x. Use [[NodeUpdateInfo]]\r\n */\r\nexport interface NodeUpdateInfoJSON {\r\n type: \"Update\";\r\n // eslint-disable-next-line deprecation/deprecation\r\n target: NodeKeyJSON;\r\n // eslint-disable-next-line deprecation/deprecation\r\n changes: PartialNodeJSON;\r\n}\r\n\r\n/**\r\n * JSON representation of [[HierarchyCompareInfo]].\r\n * @public\r\n * @deprecated in 3.x. Use [[HierarchyCompareInfo]].\r\n */\r\nexport interface HierarchyCompareInfoJSON {\r\n // eslint-disable-next-line deprecation/deprecation\r\n changes: PartialHierarchyModificationJSON[];\r\n continuationToken?: {\r\n prevHierarchyNode: string;\r\n currHierarchyNode: string;\r\n };\r\n}\r\n\r\n/**\r\n * Information about hierarchy modification / differences.\r\n * @public\r\n */\r\nexport interface HierarchyCompareInfo {\r\n /** A list of hierarchy changes */\r\n changes: PartialHierarchyModification[];\r\n /** Continuation token for requesting more changes. */\r\n continuationToken?: {\r\n prevHierarchyNode: string;\r\n currHierarchyNode: string;\r\n };\r\n}\r\n\r\n/** @public */\r\nexport namespace HierarchyCompareInfo {\r\n /**\r\n * Serialize given object to JSON.\r\n * @deprecated in 3.x. Use [[HierarchyCompareInfo]]\r\n */\r\n // eslint-disable-next-line deprecation/deprecation\r\n export function toJSON(obj: HierarchyCompareInfo): HierarchyCompareInfoJSON {\r\n return {\r\n ...obj,\r\n // eslint-disable-next-line deprecation/deprecation\r\n changes: obj.changes.map((change) => PartialHierarchyModification.toJSON(change)),\r\n };\r\n }\r\n\r\n /**\r\n * Deserialize given object from JSON\r\n * @deprecated in 3.x. Use [[HierarchyCompareInfo]]\r\n */\r\n // eslint-disable-next-line deprecation/deprecation\r\n export function fromJSON(json: HierarchyCompareInfoJSON): HierarchyCompareInfo {\r\n return {\r\n ...json,\r\n // eslint-disable-next-line deprecation/deprecation\r\n changes: json.changes.map((change) => PartialHierarchyModification.fromJSON(change)),\r\n };\r\n }\r\n}\r\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Category.d.ts","sourceRoot":"","sources":["../../../../src/presentation-common/content/Category.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAEjD;;;GAGG;AACH,MAAM,WAAW,mBAAmB;IAClC,kBAAkB;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,oBAAoB;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,4BAA4B;IAC5B,WAAW,EAAE,MAAM,CAAC;IACpB,+EAA+E;IAC/E,QAAQ,EAAE,MAAM,CAAC;IACjB,0EAA0E;IAC1E,MAAM,EAAE,OAAO,CAAC;IAChB,kCAAkC;IAClC,MAAM,CAAC,EAAE,mBAAmB,CAAC;IAC7B,kCAAkC;IAClC,QAAQ,CAAC,EAAE,mBAAmB,CAAC;CAChC;AACD,cAAc;AACd,yBAAiB,mBAAmB,CAAC;IACnC,uCAAuC;IACvC,SAAgB,MAAM,CAAC,QAAQ,EAAE,mBAAmB,GAAG,uBAAuB,
|
|
1
|
+
{"version":3,"file":"Category.d.ts","sourceRoot":"","sources":["../../../../src/presentation-common/content/Category.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAEjD;;;GAGG;AACH,MAAM,WAAW,mBAAmB;IAClC,kBAAkB;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,oBAAoB;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,4BAA4B;IAC5B,WAAW,EAAE,MAAM,CAAC;IACpB,+EAA+E;IAC/E,QAAQ,EAAE,MAAM,CAAC;IACjB,0EAA0E;IAC1E,MAAM,EAAE,OAAO,CAAC;IAChB,kCAAkC;IAClC,MAAM,CAAC,EAAE,mBAAmB,CAAC;IAC7B,kCAAkC;IAClC,QAAQ,CAAC,EAAE,mBAAmB,CAAC;CAChC;AACD,cAAc;AACd,yBAAiB,mBAAmB,CAAC;IACnC,uCAAuC;IACvC,SAAgB,MAAM,CAAC,QAAQ,EAAE,mBAAmB,GAAG,uBAAuB,CAM7E;IAED;;;OAGG;IACH,SAAgB,QAAQ,CAAC,IAAI,EAAE,uBAAuB,GAAG,mBAAmB,CAI3E;IAWD,+DAA+D;IAC/D,SAAgB,YAAY,CAAC,IAAI,EAAE,uBAAuB,EAAE,GAAG,mBAAmB,EAAE,CAInF;CACF;AAED;;;GAGG;AACH,MAAM,WAAW,uBAAuB;IACtC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,OAAO,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,mBAAmB,CAAC;CAChC"}
|
|
@@ -13,11 +13,10 @@ var CategoryDescription;
|
|
|
13
13
|
(function (CategoryDescription) {
|
|
14
14
|
/** Serialize given category to JSON */
|
|
15
15
|
function toJSON(category) {
|
|
16
|
-
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
17
16
|
const { parent, ...rest } = category;
|
|
18
17
|
return {
|
|
19
18
|
...rest,
|
|
20
|
-
...(
|
|
19
|
+
...(parent ? { parent: parent.name } : undefined),
|
|
21
20
|
};
|
|
22
21
|
}
|
|
23
22
|
CategoryDescription.toJSON = toJSON;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Category.js","sourceRoot":"","sources":["../../../../src/presentation-common/content/Category.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAwBH,cAAc;AACd,IAAiB,mBAAmB,
|
|
1
|
+
{"version":3,"file":"Category.js","sourceRoot":"","sources":["../../../../src/presentation-common/content/Category.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAwBH,cAAc;AACd,IAAiB,mBAAmB,CAmCnC;AAnCD,WAAiB,mBAAmB;IAClC,uCAAuC;IACvC,SAAgB,MAAM,CAAC,QAA6B;QAClD,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,QAAQ,CAAC;QACrC,OAAO;YACL,GAAG,IAAI;YACP,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;SAClD,CAAC;IACJ,CAAC;IANe,0BAAM,SAMrB,CAAA;IAED;;;OAGG;IACH,SAAgB,QAAQ,CAAC,IAA6B;QACpD,6DAA6D;QAC7D,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,IAAI,CAAC;QACjC,OAAO,IAAI,CAAC;IACd,CAAC;IAJe,4BAAQ,WAIvB,CAAA;IAED,SAAS,yBAAyB,CAAC,IAA6B,EAAE,aAA+C;QAC/G,MAAM,QAAQ,GAAG,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAE,CAAC;QAC/C,IAAI,IAAI,CAAC,MAAM,EAAE;YACf,mDAAmD;YACnD,QAAQ,CAAC,MAAM,GAAG,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;SAClD;QACD,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,+DAA+D;IAC/D,SAAgB,YAAY,CAAC,IAA+B;QAC1D,MAAM,aAAa,GAAG,IAAI,GAAG,EAA+B,CAAC;QAC7D,IAAI,CAAC,OAAO,CAAC,CAAC,YAAY,EAAE,EAAE,CAAC,aAAa,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,EAAE,mBAAmB,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QACjH,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,YAAY,EAAE,EAAE,CAAC,yBAAyB,CAAC,YAAY,EAAE,aAAa,CAAC,CAAC,CAAC;IAC5F,CAAC;IAJe,gCAAY,eAI3B,CAAA;AACH,CAAC,EAnCgB,mBAAmB,GAAnB,2BAAmB,KAAnB,2BAAmB,QAmCnC","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 { RendererDescription } from \"./Renderer\";\r\n\r\n/**\r\n * A data structure that describes a [[Field]] category.\r\n * @public\r\n */\r\nexport interface CategoryDescription {\r\n /** Unique name */\r\n name: string;\r\n /** Display label */\r\n label: string;\r\n /** Extensive description */\r\n description: string;\r\n /** Priority. Categories with higher priority should appear higher in the UI */\r\n priority: number;\r\n /** Should this category be auto-expanded when it's displayed in the UI */\r\n expand: boolean;\r\n /** Parent category description */\r\n parent?: CategoryDescription;\r\n /** Custom renderer description */\r\n renderer?: RendererDescription;\r\n}\r\n/** @public */\r\nexport namespace CategoryDescription {\r\n /** Serialize given category to JSON */\r\n export function toJSON(category: CategoryDescription): CategoryDescriptionJSON {\r\n const { parent, ...rest } = category;\r\n return {\r\n ...rest,\r\n ...(parent ? { parent: parent.name } : undefined),\r\n };\r\n }\r\n\r\n /**\r\n * Deserialize [[CategoryDescription]] from JSON. The `parent` is not assigned - use [[CategoryDescription.listFromJSON]]\r\n * to deserialize the whole categories list and set parents.\r\n */\r\n export function fromJSON(json: CategoryDescriptionJSON): CategoryDescription {\r\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\r\n const { parent, ...rest } = json;\r\n return rest;\r\n }\r\n\r\n function createCategoriesHierarchy(json: CategoryDescriptionJSON, categoriesMap: Map<string, CategoryDescription>): CategoryDescription {\r\n const category = categoriesMap.get(json.name)!;\r\n if (json.parent) {\r\n // note: mutating categories in the `categoriesMap`\r\n category.parent = categoriesMap.get(json.parent);\r\n }\r\n return category;\r\n }\r\n\r\n /** Deserialize a list of [[CategoryDescription]] from JSON. */\r\n export function listFromJSON(json: CategoryDescriptionJSON[]): CategoryDescription[] {\r\n const categoriesMap = new Map<string, CategoryDescription>();\r\n json.forEach((categoryJson) => categoriesMap.set(categoryJson.name, CategoryDescription.fromJSON(categoryJson)));\r\n return json.map((categoryJson) => createCategoriesHierarchy(categoryJson, categoriesMap));\r\n }\r\n}\r\n\r\n/**\r\n * Serialized [[CategoryDescription]] JSON representation.\r\n * @public\r\n */\r\nexport interface CategoryDescriptionJSON {\r\n name: string;\r\n label: string;\r\n description: string;\r\n priority: number;\r\n expand: boolean;\r\n parent?: string;\r\n renderer?: RendererDescription;\r\n}\r\n"]}
|