@itwin/presentation-common 3.6.0-dev.55 → 3.6.0-dev.59
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/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 +2 -2
- 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 +19 -14
- 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 +19 -21
- package/lib/cjs/presentation-common/PresentationRpcInterface.d.ts.map +1 -1
- package/lib/cjs/presentation-common/PresentationRpcInterface.js +2 -5
- package/lib/cjs/presentation-common/PresentationRpcInterface.js.map +1 -1
- package/lib/cjs/presentation-common/RpcRequestsHandler.d.ts +8 -8
- package/lib/cjs/presentation-common/RpcRequestsHandler.d.ts.map +1 -1
- package/lib/cjs/presentation-common/RpcRequestsHandler.js +11 -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 +21 -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 +67 -18
- package/lib/cjs/presentation-common/content/Descriptor.d.ts.map +1 -1
- package/lib/cjs/presentation-common/content/Descriptor.js +0 -2
- 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 +6 -8
- 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 +11 -4
- package/lib/cjs/presentation-common/hierarchy/HierarchyLevel.d.ts.map +1 -1
- package/lib/cjs/presentation-common/hierarchy/HierarchyLevel.js +10 -2
- package/lib/cjs/presentation-common/hierarchy/HierarchyLevel.js.map +1 -1
- package/lib/cjs/presentation-common/hierarchy/Key.d.ts +27 -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 +12 -7
- 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 +5 -3
- 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 +2 -2
- 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 +5 -2
- 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 +2 -2
- 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 +17 -10
- package/lib/cjs/presentation-common/rules/customization/GroupingRule.d.ts.map +1 -1
- package/lib/cjs/presentation-common/rules/customization/GroupingRule.js.map +1 -1
- package/lib/cjs/presentation-common/rules/customization/ImageIdOverride.d.ts +2 -2
- 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 +2 -2
- 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 +2 -2
- 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 +2 -2
- 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/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 +2 -2
- 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 +19 -14
- 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 +19 -21
- package/lib/esm/presentation-common/PresentationRpcInterface.d.ts.map +1 -1
- package/lib/esm/presentation-common/PresentationRpcInterface.js +2 -5
- package/lib/esm/presentation-common/PresentationRpcInterface.js.map +1 -1
- package/lib/esm/presentation-common/RpcRequestsHandler.d.ts +8 -8
- package/lib/esm/presentation-common/RpcRequestsHandler.d.ts.map +1 -1
- package/lib/esm/presentation-common/RpcRequestsHandler.js +11 -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 +21 -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 +67 -18
- package/lib/esm/presentation-common/content/Descriptor.d.ts.map +1 -1
- package/lib/esm/presentation-common/content/Descriptor.js +0 -2
- 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 +6 -8
- 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 +11 -4
- package/lib/esm/presentation-common/hierarchy/HierarchyLevel.d.ts.map +1 -1
- package/lib/esm/presentation-common/hierarchy/HierarchyLevel.js +10 -2
- package/lib/esm/presentation-common/hierarchy/HierarchyLevel.js.map +1 -1
- package/lib/esm/presentation-common/hierarchy/Key.d.ts +27 -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 +12 -7
- 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 +5 -3
- 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 +2 -2
- 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 +5 -2
- 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 +2 -2
- 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 +17 -10
- package/lib/esm/presentation-common/rules/customization/GroupingRule.d.ts.map +1 -1
- package/lib/esm/presentation-common/rules/customization/GroupingRule.js.map +1 -1
- package/lib/esm/presentation-common/rules/customization/ImageIdOverride.d.ts +2 -2
- 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 +2 -2
- 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 +2 -2
- 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 +2 -2
- 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/package.json +10 -10
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InstanceFilterDefinition.js","sourceRoot":"","sources":["../../../src/presentation-common/InstanceFilterDefinition.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG","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 { StrippedRelationshipPath } from \"./EC\";\r\n\r\n
|
|
1
|
+
{"version":3,"file":"InstanceFilterDefinition.js","sourceRoot":"","sources":["../../../src/presentation-common/InstanceFilterDefinition.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG","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 { StrippedRelationshipPath } from \"./EC\";\r\n\r\n/**\r\n * Definition of an instance filter that can be used to filter content or hierarchy levels.\r\n *\r\n * Example:\r\n *\r\n * ```json\r\n * {\r\n * selectClassName: \"MySchema:MyClass\",\r\n * expression: \"this.MyProperty = 1 AND other.OtherProperty = 2\",\r\n * relatedInstances: [{\r\n * pathFromSelectToPropertyClass: [{\r\n * sourceClassName: \"MySchema:MyClass\",\r\n * relationshipName: \"MySchema:RelationshipFromMyToOtherClass\",\r\n * isForwardRelationship: true,\r\n * targetClassName: \"MySchema:OtherClass\",\r\n * }],\r\n * alias: \"other\",\r\n * }],\r\n * }\r\n * ```\r\n *\r\n * @beta\r\n */\r\nexport interface InstanceFilterDefinition {\r\n /**\r\n * Select class filter used to select only instances of specific class.\r\n * The [[relatedInstances]] attribute, when used, should specify paths from this class.\r\n * Also, the [[expression]] attribute's `this` symbol points to instances of this class.\r\n *\r\n * The format is full class name: `SchemaName:ClassName`.\r\n */\r\n selectClassName: string;\r\n\r\n /**\r\n * Specifies relationship paths pointing to related instances used in the [[expression]] attribute.\r\n *\r\n * Sometimes there's a need to filter on a related instance property. In that case, the relationship\r\n * needs to be named by specifying the path and alias for the target (or the relationship). Then, the\r\n * related instance's symbol context can be accessed through the root symbol named as specified in the\r\n * [[alias]] (or [[relationshipAlias]]) attribute.\r\n */\r\n relatedInstances?: InstanceFilterRelatedInstanceDefinition[];\r\n\r\n /**\r\n * [ECExpression]($docs/presentation/advanced/ECExpressions.md) for filtering the select instances.\r\n */\r\n expression: string;\r\n}\r\n\r\n/**\r\n * Related instance definition for accessing properties of a related instance in [[InstanceFilterDefinition.expression]].\r\n * @beta\r\n */\r\nexport type InstanceFilterRelatedInstanceDefinition =\r\n InstanceFilterRelatedInstancePath\r\n & (InstanceFilterRelatedInstanceTargetAlias | InstanceFilterRelatedInstanceRelationshipAlias);\r\n\r\n/**\r\n * Partial definition of common attributes for [[InstanceFilterRelatedInstanceDefinition]].\r\n * @beta\r\n */\r\nexport interface InstanceFilterRelatedInstancePath {\r\n /**\r\n * A relationship path from select class (either specified through [[InstanceFilterDefinition.selectClassName]] or taken from context)\r\n * to the target related instance containing the properties used in [[InstanceFilterDefinition.expression]].\r\n */\r\n pathFromSelectToPropertyClass: StrippedRelationshipPath;\r\n /**\r\n * An optional flag indicating that the target instance must exist. Setting this allows to filter out all\r\n * select instances that don't have a related instance by following the [[pathFromSelectToPropertyClass]] path.\r\n */\r\n isRequired?: boolean;\r\n}\r\n\r\n/**\r\n * Partial definition of [[InstanceFilterRelatedInstanceDefinition]] for the case when referencing the target class.\r\n * @beta\r\n */\r\nexport interface InstanceFilterRelatedInstanceTargetAlias {\r\n /**\r\n * An alias for the target class in the [[InstanceFilterRelatedInstancePath.pathFromSelectToPropertyClass]] path. This alias can be used to\r\n * access related instance symbols context in the [[InstanceFilterDefinition.expression]].\r\n */\r\n alias: string;\r\n}\r\n\r\n/**\r\n * Partial definition of [[InstanceFilterRelatedInstanceDefinition]] for the case when referencing the relationship class.\r\n * @beta\r\n */\r\nexport interface InstanceFilterRelatedInstanceRelationshipAlias {\r\n /**\r\n * An alias for the relationship in the last step of the [[InstanceFilterRelatedInstancePath.pathFromSelectToPropertyClass]] path. This alias can be\r\n * used to access the relationship instance symbols context in the [[InstanceFilterDefinition.expression]].\r\n */\r\n relationshipAlias: string;\r\n}\r\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"KeySet.d.ts","sourceRoot":"","sources":["../../../src/presentation-common/KeySet.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAA2B,UAAU,EAAoB,MAAM,qBAAqB,CAAC;AAC5F,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,MAAM,CAAC;AAE/C,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAEvD;;;GAGG;AACH,oBAAY,GAAG,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,QAAQ,CAAC,WAAW,CAAC,GAAG,QAAQ,CAAC,WAAW,CAAC,CAAC;AAEpF,cAAc;AACd,yBAAiB,GAAG,CAAC;IACnB,+CAA+C;IAC/C,SAAgB,SAAS,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,IAAI,OAAO,CAElD;IAED,oDAAoD;IACpD,SAAgB,aAAa,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,IAAI,WAAW,CAE1D;IAED,oDAAoD;IACpD,SAAgB,aAAa,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,IAAI,WAAW,CAE1D;CACF;AAED;;;GAGG;AACH,oBAAY,IAAI,GAAG,aAAa,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC;AAEzD;;;GAGG;AACH,MAAM,WAAW,UAAU;IACzB,qDAAqD;IACrD,YAAY,EAAE,KAAK,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IACtC,uCAAuC;
|
|
1
|
+
{"version":3,"file":"KeySet.d.ts","sourceRoot":"","sources":["../../../src/presentation-common/KeySet.ts"],"names":[],"mappings":"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"}
|
|
@@ -85,6 +85,7 @@ export class KeySet {
|
|
|
85
85
|
get nodeKeys() {
|
|
86
86
|
const set = new Set();
|
|
87
87
|
for (const serialized of this._nodeKeys) {
|
|
88
|
+
// eslint-disable-next-line deprecation/deprecation
|
|
88
89
|
const key = NodeKey.fromJSON(JSON.parse(serialized));
|
|
89
90
|
set.add(key);
|
|
90
91
|
}
|
|
@@ -117,6 +118,7 @@ export class KeySet {
|
|
|
117
118
|
}
|
|
118
119
|
addKeySet(keyset, pred) {
|
|
119
120
|
for (const key of keyset._nodeKeys) {
|
|
121
|
+
// eslint-disable-next-line deprecation/deprecation
|
|
120
122
|
if (!pred || pred(NodeKey.fromJSON(JSON.parse(key))))
|
|
121
123
|
this._nodeKeys.add(key);
|
|
122
124
|
}
|
|
@@ -345,6 +347,7 @@ export class KeySet {
|
|
|
345
347
|
if (some(entry[1], (id) => callback({ className, id })))
|
|
346
348
|
return true;
|
|
347
349
|
}
|
|
350
|
+
// eslint-disable-next-line deprecation/deprecation
|
|
348
351
|
return some(this._nodeKeys, (serializedKey) => callback(NodeKey.fromJSON(JSON.parse(serializedKey))));
|
|
349
352
|
}
|
|
350
353
|
/** Iterate over all keys in this keyset. */
|
|
@@ -355,6 +358,7 @@ export class KeySet {
|
|
|
355
358
|
ids.forEach((id) => callback({ className: recentClassName, id }, index++));
|
|
356
359
|
});
|
|
357
360
|
this._nodeKeys.forEach((serializedKey) => {
|
|
361
|
+
// eslint-disable-next-line deprecation/deprecation
|
|
358
362
|
callback(NodeKey.fromJSON(JSON.parse(serializedKey)), index++);
|
|
359
363
|
});
|
|
360
364
|
}
|
|
@@ -392,6 +396,7 @@ export class KeySet {
|
|
|
392
396
|
instanceKeys.push([className, compressedIds.length > 0 ? compressedIds : Id64.invalid]);
|
|
393
397
|
}
|
|
394
398
|
}
|
|
399
|
+
// eslint-disable-next-line deprecation/deprecation
|
|
395
400
|
const nodeKeys = [];
|
|
396
401
|
for (const serializedKey of this._nodeKeys.values())
|
|
397
402
|
nodeKeys.push(JSON.parse(serializedKey));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"KeySet.js","sourceRoot":"","sources":["../../../src/presentation-common/KeySet.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 { CompressedId64Set, Guid, GuidString, Id64, Id64String } from \"@itwin/core-bentley\";\r\nimport { EntityProps } from \"@itwin/core-common\";\r\nimport { InstanceId, InstanceKey } from \"./EC\";\r\nimport { PresentationError, PresentationStatus } from \"./Error\";\r\nimport { NodeKey, NodeKeyJSON } from \"./hierarchy/Key\";\r\n\r\n/**\r\n * A single key that identifies something in an iTwin.js application\r\n * @public\r\n */\r\nexport type Key = Readonly<NodeKey> | Readonly<InstanceKey> | Readonly<EntityProps>;\r\n\r\n/** @public */\r\nexport namespace Key { // eslint-disable-line @typescript-eslint/no-redeclare\r\n /** Check if the supplied key is a `NodeKey` */\r\n export function isNodeKey(key: Key): key is NodeKey {\r\n return !!(key as NodeKey).type;\r\n }\r\n\r\n /** Check if the supplied key is an `InstanceKey` */\r\n export function isInstanceKey(key: Key): key is InstanceKey {\r\n return !!(key as InstanceKey).className && !!(key as InstanceKey).id;\r\n }\r\n\r\n /** Check if the supplied key is an `EntityProps` */\r\n export function isEntityProps(key: Key): key is EntityProps {\r\n return !!(key as EntityProps).classFullName && !!(key as EntityProps).id;\r\n }\r\n}\r\n\r\n/**\r\n * A type for multiple keys that identify something in iModel.js application\r\n * @public\r\n */\r\nexport type Keys = ReadonlyArray<Key> | Readonly<KeySet>;\r\n\r\n/**\r\n * A data structure of serialized [[KeySet]]\r\n * @public\r\n */\r\nexport interface KeySetJSON {\r\n /** JSON representation of a list of instance keys */\r\n instanceKeys: Array<[string, string]>;\r\n /** An array of serialized node keys */\r\n nodeKeys: NodeKeyJSON[];\r\n}\r\n\r\n/**\r\n * A class that holds multiple [[Key]] objects. It's basically\r\n * used as a container that holds multiple keys of different types.\r\n *\r\n * @public\r\n */\r\nexport class KeySet {\r\n // note: all keys are stored as strings because we need ability to find them by value\r\n private _instanceKeys: Map<string, Set<string>>; // lower case class name => instance ids\r\n private _lowerCaseMap: Map<string, string>; // lower case class name => most recent class name\r\n private _nodeKeys: Set<string>;\r\n private _guid!: GuidString;\r\n\r\n /**\r\n * Creates an instance of KeySet.\r\n * @param source Optional source to initialize from.\r\n */\r\n constructor(source?: Keys) {\r\n this._instanceKeys = new Map();\r\n this._lowerCaseMap = new Map();\r\n this._nodeKeys = new Set();\r\n this.recalculateGuid();\r\n if (source)\r\n this.add(source);\r\n }\r\n\r\n private recalculateGuid() {\r\n // empty keyset should have empty guid, otherwise use a random guid value\r\n this._guid = this.isEmpty ? Guid.empty : Guid.createValue();\r\n }\r\n\r\n /**\r\n * Get a GUID that identifies changes in this keyset. The value\r\n * does not uniquely identify contents of the keyset, but it can be\r\n * used to check whether keyset has changed.\r\n */\r\n public get guid(): GuidString { return this._guid; }\r\n\r\n /**\r\n * Get a map of instance keys stored in this KeySet\r\n *\r\n * **Warning**: getting instance keys might be expensive for\r\n * large KeySets.\r\n */\r\n public get instanceKeys(): Map<string, Set<InstanceId>> {\r\n const map = new Map<string, Set<InstanceId>>();\r\n for (const entry of this._instanceKeys)\r\n map.set(this._lowerCaseMap.get(entry[\"0\"])!, new Set([...entry[\"1\"]].map((key: string) => Id64.fromJSON(key))));\r\n return map;\r\n }\r\n\r\n /**\r\n * Get instance keys count\r\n */\r\n public get instanceKeysCount(): number {\r\n let count = 0;\r\n this._instanceKeys.forEach((set: Set<string>) => count += set.size);\r\n return count;\r\n }\r\n\r\n /**\r\n * Get a set of node keys stored in this KeySet\r\n *\r\n * **Warning**: getting node keys might be expensive for\r\n * large KeySets.\r\n */\r\n public get nodeKeys(): Set<NodeKey> {\r\n const set = new Set<NodeKey>();\r\n for (const serialized of this._nodeKeys) {\r\n const key = NodeKey.fromJSON(JSON.parse(serialized));\r\n set.add(key);\r\n }\r\n return set;\r\n }\r\n\r\n /**\r\n * Get node keys count\r\n */\r\n public get nodeKeysCount(): number {\r\n return this._nodeKeys.size;\r\n }\r\n\r\n private isKeySet(set: Keys | Key): set is Readonly<KeySet> {\r\n return !!(set as KeySet)._nodeKeys && !!(set as KeySet)._instanceKeys;\r\n }\r\n\r\n private isKeysArray(keys: Keys | Key): keys is ReadonlyArray<Key> {\r\n return Array.isArray(keys);\r\n }\r\n\r\n /**\r\n * Clear this KeySet.\r\n * @returns itself\r\n */\r\n public clear(): KeySet {\r\n if (this.isEmpty)\r\n return this;\r\n\r\n this._instanceKeys = new Map();\r\n this._lowerCaseMap = new Map();\r\n this._nodeKeys = new Set();\r\n this.recalculateGuid();\r\n return this;\r\n }\r\n\r\n private addKeySet(keyset: Readonly<KeySet>, pred?: (key: Key) => boolean): void {\r\n for (const key of (keyset as any)._nodeKeys) {\r\n if (!pred || pred(NodeKey.fromJSON(JSON.parse(key))))\r\n this._nodeKeys.add(key);\r\n }\r\n for (const entry of (keyset as any)._instanceKeys) {\r\n let set = this._instanceKeys.get(entry[\"0\"]);\r\n const className = (keyset as KeySet)._lowerCaseMap.get(entry[\"0\"])!;\r\n if (!set) {\r\n set = new Set();\r\n this._instanceKeys.set(entry[\"0\"], set);\r\n this._lowerCaseMap.set(entry[\"0\"], className);\r\n }\r\n entry[\"1\"].forEach((id: Id64String) => {\r\n if (!pred || pred({ className, id }))\r\n set!.add(id);\r\n });\r\n }\r\n }\r\n\r\n private addKeySetJSON(keyset: Readonly<KeySetJSON>): void {\r\n for (const key of keyset.nodeKeys)\r\n this._nodeKeys.add(JSON.stringify(key));\r\n for (const entry of keyset.instanceKeys) {\r\n const lcClassName = entry[\"0\"].toLowerCase();\r\n const idsJson: string | Id64String[] = entry[\"1\"];\r\n const ids: Set<Id64String> =\r\n typeof idsJson === \"string\"\r\n ? idsJson === Id64.invalid\r\n ? new Set([Id64.invalid])\r\n : CompressedId64Set.decompressSet(idsJson)\r\n : new Set(idsJson);\r\n this._instanceKeys.set(lcClassName, ids);\r\n this._lowerCaseMap.set(lcClassName, entry[\"0\"]);\r\n }\r\n }\r\n\r\n /**\r\n * Add a key or keys to this KeySet.\r\n * @param value A key or keys to add.\r\n * @param pred An optional predicate function that indicates whether a key should be added\r\n * @returns itself\r\n */\r\n public add(value: Keys | Key, pred?: (key: Key) => boolean): KeySet {\r\n if (!value)\r\n throw new PresentationError(PresentationStatus.InvalidArgument, `Invalid argument: value = ${value}`);\r\n const sizeBefore = this.size;\r\n if (this.isKeySet(value)) {\r\n this.addKeySet(value, pred);\r\n } else if (this.isKeysArray(value)) {\r\n value.forEach((key) => this.add(key, pred));\r\n } else if (!pred || pred(value)) {\r\n if (Key.isEntityProps(value)) {\r\n this.add({ className: value.classFullName, id: Id64.fromJSON(value.id) } as InstanceKey);\r\n } else if (Key.isInstanceKey(value)) {\r\n const lcClassName = value.className.toLowerCase();\r\n if (!this._instanceKeys.has(lcClassName)) {\r\n this._instanceKeys.set(lcClassName, new Set());\r\n this._lowerCaseMap.set(lcClassName, value.className);\r\n }\r\n this._lowerCaseMap.set(lcClassName, value.className);\r\n this._instanceKeys.get(lcClassName)!.add(value.id);\r\n } else if (Key.isNodeKey(value)) {\r\n this._nodeKeys.add(JSON.stringify(value));\r\n } else {\r\n throw new PresentationError(PresentationStatus.InvalidArgument, `Invalid argument: value = ${value}`);\r\n }\r\n }\r\n if (this.size !== sizeBefore)\r\n this.recalculateGuid();\r\n return this;\r\n }\r\n\r\n private deleteKeySet(keyset: Readonly<KeySet>): void {\r\n for (const key of (keyset as any)._nodeKeys)\r\n this._nodeKeys.delete(key);\r\n for (const entry of (keyset as any)._instanceKeys) {\r\n const set = this._instanceKeys.get(entry[\"0\"].toLowerCase());\r\n if (set) {\r\n entry[\"1\"].forEach((key: string) => {\r\n set.delete(key);\r\n });\r\n }\r\n }\r\n }\r\n\r\n /**\r\n * Deletes a key or keys from this KeySet.\r\n * @param value A key or keys to delete.\r\n * @returns itself\r\n */\r\n public delete(value: Keys | Key): KeySet {\r\n if (!value)\r\n throw new PresentationError(PresentationStatus.InvalidArgument, `Invalid argument: value = ${value}`);\r\n const sizeBefore = this.size;\r\n if (this.isKeySet(value)) {\r\n this.deleteKeySet(value);\r\n } else if (this.isKeysArray(value)) {\r\n for (const key of value)\r\n this.delete(key);\r\n } else if (Key.isEntityProps(value)) {\r\n this.delete({ className: value.classFullName, id: value.id! } as InstanceKey);\r\n } else if (Key.isInstanceKey(value)) {\r\n const set = this._instanceKeys.get(value.className.toLowerCase());\r\n if (set)\r\n set.delete(value.id);\r\n } else if (Key.isNodeKey(value)) {\r\n this._nodeKeys.delete(JSON.stringify(value));\r\n } else {\r\n throw new PresentationError(PresentationStatus.InvalidArgument, `Invalid argument: value = ${value}`);\r\n }\r\n if (this.size !== sizeBefore)\r\n this.recalculateGuid();\r\n return this;\r\n }\r\n\r\n /**\r\n * Check if this KeySet contains the specified key.\r\n * @param value The key to check.\r\n */\r\n public has(value: Key): boolean {\r\n if (!value)\r\n throw new PresentationError(PresentationStatus.InvalidArgument, `Invalid argument: value = ${value}`);\r\n if (Key.isEntityProps(value))\r\n return this.has({ className: value.classFullName, id: value.id! } as InstanceKey);\r\n if (Key.isInstanceKey(value)) {\r\n const set = this._instanceKeys.get(value.className.toLowerCase());\r\n return !!(set && set.has(value.id));\r\n }\r\n if (Key.isNodeKey(value))\r\n return this._nodeKeys.has(JSON.stringify(value));\r\n throw new PresentationError(PresentationStatus.InvalidArgument, `Invalid argument: value = ${value}`);\r\n }\r\n\r\n private hasKeySet(readonlyKeys: Readonly<KeySet>, checkType: \"all\" | \"any\"): boolean {\r\n // note: cast-away read-onlyness to access private members...\r\n const keys = readonlyKeys as KeySet;\r\n\r\n if (checkType === \"all\") {\r\n if (this._nodeKeys.size < keys._nodeKeys.size || this._instanceKeys.size < keys._instanceKeys.size)\r\n return false;\r\n if ([...keys._nodeKeys].some((key) => !this._nodeKeys.has(key)))\r\n return false;\r\n for (const otherEntry of keys._instanceKeys) {\r\n const thisEntryKeys = this._instanceKeys.get(otherEntry[\"0\"].toLowerCase());\r\n if (!thisEntryKeys || thisEntryKeys.size < otherEntry[\"1\"].size)\r\n return false;\r\n if ([...otherEntry[\"1\"]].some((key) => !thisEntryKeys.has(key)))\r\n return false;\r\n }\r\n return true;\r\n }\r\n\r\n // \"any\" check type\r\n if ([...keys._nodeKeys].some((key) => this._nodeKeys.has(key)))\r\n return true;\r\n for (const otherEntry of keys._instanceKeys) {\r\n const thisEntryKeys = this._instanceKeys.get(otherEntry[\"0\"].toLowerCase());\r\n if (thisEntryKeys && [...otherEntry[\"1\"]].some((key) => thisEntryKeys.has(key)))\r\n return true;\r\n }\r\n return false;\r\n }\r\n\r\n private hasKeysArray(keys: ReadonlyArray<Key>, checkType: \"all\" | \"any\"): boolean {\r\n if (checkType === \"all\") {\r\n if (this.size < keys.length)\r\n return false;\r\n for (const key of keys) {\r\n if (!this.has(key))\r\n return false;\r\n }\r\n return true;\r\n }\r\n\r\n // \"any\" check type\r\n for (const key of keys) {\r\n if (this.has(key))\r\n return true;\r\n }\r\n return false;\r\n }\r\n\r\n /**\r\n * Check if this KeySet contains all the specified keys.\r\n * @param keys The keys to check.\r\n */\r\n public hasAll(keys: Keys): boolean {\r\n if (!keys)\r\n throw new PresentationError(PresentationStatus.InvalidArgument, `Invalid argument: value = ${keys}`);\r\n if (this.isKeySet(keys))\r\n return this.hasKeySet(keys, \"all\");\r\n if (this.isKeysArray(keys))\r\n return this.hasKeysArray(keys, \"all\");\r\n throw new PresentationError(PresentationStatus.InvalidArgument, `Invalid argument: keys = ${keys}`);\r\n }\r\n\r\n /**\r\n * Check if this KeySet contains any of the specified keys.\r\n * @param keys The keys to check.\r\n */\r\n public hasAny(keys: Keys): boolean {\r\n if (!keys)\r\n throw new PresentationError(PresentationStatus.InvalidArgument, `Invalid argument: value = ${keys}`);\r\n if (this.isKeySet(keys))\r\n return this.hasKeySet(keys, \"any\");\r\n if (this.isKeysArray(keys))\r\n return this.hasKeysArray(keys, \"any\");\r\n throw new PresentationError(PresentationStatus.InvalidArgument, `Invalid argument: keys = ${keys}`);\r\n }\r\n\r\n /**\r\n * Get the number of keys stored in this KeySet.\r\n */\r\n public get size(): number {\r\n const nodeKeysCount = this._nodeKeys.size;\r\n let instanceIdsCount = 0;\r\n for (const set of this._instanceKeys.values())\r\n instanceIdsCount += set.size;\r\n return nodeKeysCount + instanceIdsCount;\r\n }\r\n\r\n /**\r\n * Is this KeySet currently empty.\r\n */\r\n public get isEmpty(): boolean {\r\n return 0 === this.size;\r\n }\r\n\r\n /** Iterate over all keys in this keyset. */\r\n public some(callback: (key: Key) => boolean) {\r\n for (const entry of this._instanceKeys) {\r\n const className = this._lowerCaseMap.get(entry[\"0\"].toLowerCase())!;\r\n if (some(entry[1], (id: Id64String) => callback({ className, id })))\r\n return true;\r\n }\r\n return some(this._nodeKeys, (serializedKey: string) => callback(NodeKey.fromJSON(JSON.parse(serializedKey))));\r\n }\r\n\r\n /** Iterate over all keys in this keyset. */\r\n public forEach(callback: (key: InstanceKey | NodeKey, index: number) => void) {\r\n let index = 0;\r\n this._instanceKeys.forEach((ids: Set<Id64String>, className: string) => {\r\n const recentClassName = this._lowerCaseMap.get(className.toLowerCase())!;\r\n ids.forEach((id: Id64String) => callback({ className: recentClassName, id }, index++));\r\n });\r\n this._nodeKeys.forEach((serializedKey: string) => {\r\n callback(NodeKey.fromJSON(JSON.parse(serializedKey)), index++);\r\n });\r\n }\r\n\r\n /** Iterate over all keys in this keyset in batches */\r\n public forEachBatch(batchSize: number, callback: (batch: KeySet, index: number) => void) {\r\n const size = this.size;\r\n const count = Math.ceil(size / batchSize);\r\n if (1 === count) {\r\n callback(this, 0);\r\n return;\r\n }\r\n let batch = new KeySet();\r\n let batchIndex = 0;\r\n let currBatchSize = 0;\r\n this.forEach((key, index) => {\r\n batch.add(key);\r\n ++currBatchSize;\r\n if (currBatchSize === batchSize || index === (size - 1)) {\r\n callback(batch, batchIndex++);\r\n batch = new KeySet();\r\n currBatchSize = 0;\r\n }\r\n });\r\n }\r\n\r\n /**\r\n * Serializes this KeySet to JSON\r\n * @public\r\n */\r\n public toJSON(): KeySetJSON {\r\n const instanceKeys: [string, string][] = [];\r\n for (const entry of this._instanceKeys.entries()) {\r\n if (entry[\"1\"].size > 0) {\r\n const className = this._lowerCaseMap.get(entry[\"0\"].toLowerCase());\r\n const compressedIds = CompressedId64Set.sortAndCompress(entry[\"1\"]);\r\n instanceKeys.push([className!, compressedIds.length > 0 ? compressedIds : Id64.invalid]);\r\n }\r\n }\r\n const nodeKeys: NodeKeyJSON[] = [];\r\n for (const serializedKey of this._nodeKeys.values())\r\n nodeKeys.push(JSON.parse(serializedKey));\r\n return {\r\n instanceKeys,\r\n nodeKeys,\r\n };\r\n }\r\n\r\n /**\r\n * Creates a KeySet from JSON\r\n * @public\r\n */\r\n public static fromJSON(json: KeySetJSON): KeySet {\r\n const keyset = new KeySet();\r\n keyset.addKeySetJSON(json);\r\n return keyset;\r\n }\r\n}\r\n\r\nconst some = <TItem>(set: Set<TItem>, cb: (item: TItem) => boolean) => {\r\n for (const item of set) {\r\n if (cb(item))\r\n return true;\r\n }\r\n return false;\r\n};\r\n"]}
|
|
1
|
+
{"version":3,"file":"KeySet.js","sourceRoot":"","sources":["../../../src/presentation-common/KeySet.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 { CompressedId64Set, Guid, GuidString, Id64, Id64String } from \"@itwin/core-bentley\";\r\nimport { EntityProps } from \"@itwin/core-common\";\r\nimport { InstanceId, InstanceKey } from \"./EC\";\r\nimport { PresentationError, PresentationStatus } from \"./Error\";\r\nimport { NodeKey, NodeKeyJSON } from \"./hierarchy/Key\";\r\n\r\n/**\r\n * A single key that identifies something in an iTwin.js application\r\n * @public\r\n */\r\nexport type Key = Readonly<NodeKey> | Readonly<InstanceKey> | Readonly<EntityProps>;\r\n\r\n/** @public */\r\nexport namespace Key { // eslint-disable-line @typescript-eslint/no-redeclare\r\n /** Check if the supplied key is a `NodeKey` */\r\n export function isNodeKey(key: Key): key is NodeKey {\r\n return !!(key as NodeKey).type;\r\n }\r\n\r\n /** Check if the supplied key is an `InstanceKey` */\r\n export function isInstanceKey(key: Key): key is InstanceKey {\r\n return !!(key as InstanceKey).className && !!(key as InstanceKey).id;\r\n }\r\n\r\n /** Check if the supplied key is an `EntityProps` */\r\n export function isEntityProps(key: Key): key is EntityProps {\r\n return !!(key as EntityProps).classFullName && !!(key as EntityProps).id;\r\n }\r\n}\r\n\r\n/**\r\n * A type for multiple keys that identify something in iModel.js application\r\n * @public\r\n */\r\nexport type Keys = ReadonlyArray<Key> | Readonly<KeySet>;\r\n\r\n/**\r\n * A data structure of serialized [[KeySet]]\r\n * @public\r\n */\r\nexport interface KeySetJSON {\r\n /** JSON representation of a list of instance keys */\r\n instanceKeys: Array<[string, string]>;\r\n /** An array of serialized node keys */\r\n // eslint-disable-next-line deprecation/deprecation\r\n nodeKeys: NodeKeyJSON[];\r\n}\r\n\r\n/**\r\n * A class that holds multiple [[Key]] objects. It's basically\r\n * used as a container that holds multiple keys of different types.\r\n *\r\n * @public\r\n */\r\nexport class KeySet {\r\n // note: all keys are stored as strings because we need ability to find them by value\r\n private _instanceKeys: Map<string, Set<string>>; // lower case class name => instance ids\r\n private _lowerCaseMap: Map<string, string>; // lower case class name => most recent class name\r\n private _nodeKeys: Set<string>;\r\n private _guid!: GuidString;\r\n\r\n /**\r\n * Creates an instance of KeySet.\r\n * @param source Optional source to initialize from.\r\n */\r\n constructor(source?: Keys) {\r\n this._instanceKeys = new Map();\r\n this._lowerCaseMap = new Map();\r\n this._nodeKeys = new Set();\r\n this.recalculateGuid();\r\n if (source)\r\n this.add(source);\r\n }\r\n\r\n private recalculateGuid() {\r\n // empty keyset should have empty guid, otherwise use a random guid value\r\n this._guid = this.isEmpty ? Guid.empty : Guid.createValue();\r\n }\r\n\r\n /**\r\n * Get a GUID that identifies changes in this keyset. The value\r\n * does not uniquely identify contents of the keyset, but it can be\r\n * used to check whether keyset has changed.\r\n */\r\n public get guid(): GuidString { return this._guid; }\r\n\r\n /**\r\n * Get a map of instance keys stored in this KeySet\r\n *\r\n * **Warning**: getting instance keys might be expensive for\r\n * large KeySets.\r\n */\r\n public get instanceKeys(): Map<string, Set<InstanceId>> {\r\n const map = new Map<string, Set<InstanceId>>();\r\n for (const entry of this._instanceKeys)\r\n map.set(this._lowerCaseMap.get(entry[\"0\"])!, new Set([...entry[\"1\"]].map((key: string) => Id64.fromJSON(key))));\r\n return map;\r\n }\r\n\r\n /**\r\n * Get instance keys count\r\n */\r\n public get instanceKeysCount(): number {\r\n let count = 0;\r\n this._instanceKeys.forEach((set: Set<string>) => count += set.size);\r\n return count;\r\n }\r\n\r\n /**\r\n * Get a set of node keys stored in this KeySet\r\n *\r\n * **Warning**: getting node keys might be expensive for\r\n * large KeySets.\r\n */\r\n public get nodeKeys(): Set<NodeKey> {\r\n const set = new Set<NodeKey>();\r\n for (const serialized of this._nodeKeys) {\r\n // eslint-disable-next-line deprecation/deprecation\r\n const key = NodeKey.fromJSON(JSON.parse(serialized));\r\n set.add(key);\r\n }\r\n return set;\r\n }\r\n\r\n /**\r\n * Get node keys count\r\n */\r\n public get nodeKeysCount(): number {\r\n return this._nodeKeys.size;\r\n }\r\n\r\n private isKeySet(set: Keys | Key): set is Readonly<KeySet> {\r\n return !!(set as KeySet)._nodeKeys && !!(set as KeySet)._instanceKeys;\r\n }\r\n\r\n private isKeysArray(keys: Keys | Key): keys is ReadonlyArray<Key> {\r\n return Array.isArray(keys);\r\n }\r\n\r\n /**\r\n * Clear this KeySet.\r\n * @returns itself\r\n */\r\n public clear(): KeySet {\r\n if (this.isEmpty)\r\n return this;\r\n\r\n this._instanceKeys = new Map();\r\n this._lowerCaseMap = new Map();\r\n this._nodeKeys = new Set();\r\n this.recalculateGuid();\r\n return this;\r\n }\r\n\r\n private addKeySet(keyset: Readonly<KeySet>, pred?: (key: Key) => boolean): void {\r\n for (const key of (keyset as any)._nodeKeys) {\r\n // eslint-disable-next-line deprecation/deprecation\r\n if (!pred || pred(NodeKey.fromJSON(JSON.parse(key))))\r\n this._nodeKeys.add(key);\r\n }\r\n for (const entry of (keyset as any)._instanceKeys) {\r\n let set = this._instanceKeys.get(entry[\"0\"]);\r\n const className = (keyset as KeySet)._lowerCaseMap.get(entry[\"0\"])!;\r\n if (!set) {\r\n set = new Set();\r\n this._instanceKeys.set(entry[\"0\"], set);\r\n this._lowerCaseMap.set(entry[\"0\"], className);\r\n }\r\n entry[\"1\"].forEach((id: Id64String) => {\r\n if (!pred || pred({ className, id }))\r\n set!.add(id);\r\n });\r\n }\r\n }\r\n\r\n private addKeySetJSON(keyset: Readonly<KeySetJSON>): void {\r\n for (const key of keyset.nodeKeys)\r\n this._nodeKeys.add(JSON.stringify(key));\r\n for (const entry of keyset.instanceKeys) {\r\n const lcClassName = entry[\"0\"].toLowerCase();\r\n const idsJson: string | Id64String[] = entry[\"1\"];\r\n const ids: Set<Id64String> =\r\n typeof idsJson === \"string\"\r\n ? idsJson === Id64.invalid\r\n ? new Set([Id64.invalid])\r\n : CompressedId64Set.decompressSet(idsJson)\r\n : new Set(idsJson);\r\n this._instanceKeys.set(lcClassName, ids);\r\n this._lowerCaseMap.set(lcClassName, entry[\"0\"]);\r\n }\r\n }\r\n\r\n /**\r\n * Add a key or keys to this KeySet.\r\n * @param value A key or keys to add.\r\n * @param pred An optional predicate function that indicates whether a key should be added\r\n * @returns itself\r\n */\r\n public add(value: Keys | Key, pred?: (key: Key) => boolean): KeySet {\r\n if (!value)\r\n throw new PresentationError(PresentationStatus.InvalidArgument, `Invalid argument: value = ${value}`);\r\n const sizeBefore = this.size;\r\n if (this.isKeySet(value)) {\r\n this.addKeySet(value, pred);\r\n } else if (this.isKeysArray(value)) {\r\n value.forEach((key) => this.add(key, pred));\r\n } else if (!pred || pred(value)) {\r\n if (Key.isEntityProps(value)) {\r\n this.add({ className: value.classFullName, id: Id64.fromJSON(value.id) } as InstanceKey);\r\n } else if (Key.isInstanceKey(value)) {\r\n const lcClassName = value.className.toLowerCase();\r\n if (!this._instanceKeys.has(lcClassName)) {\r\n this._instanceKeys.set(lcClassName, new Set());\r\n this._lowerCaseMap.set(lcClassName, value.className);\r\n }\r\n this._lowerCaseMap.set(lcClassName, value.className);\r\n this._instanceKeys.get(lcClassName)!.add(value.id);\r\n } else if (Key.isNodeKey(value)) {\r\n this._nodeKeys.add(JSON.stringify(value));\r\n } else {\r\n throw new PresentationError(PresentationStatus.InvalidArgument, `Invalid argument: value = ${value}`);\r\n }\r\n }\r\n if (this.size !== sizeBefore)\r\n this.recalculateGuid();\r\n return this;\r\n }\r\n\r\n private deleteKeySet(keyset: Readonly<KeySet>): void {\r\n for (const key of (keyset as any)._nodeKeys)\r\n this._nodeKeys.delete(key);\r\n for (const entry of (keyset as any)._instanceKeys) {\r\n const set = this._instanceKeys.get(entry[\"0\"].toLowerCase());\r\n if (set) {\r\n entry[\"1\"].forEach((key: string) => {\r\n set.delete(key);\r\n });\r\n }\r\n }\r\n }\r\n\r\n /**\r\n * Deletes a key or keys from this KeySet.\r\n * @param value A key or keys to delete.\r\n * @returns itself\r\n */\r\n public delete(value: Keys | Key): KeySet {\r\n if (!value)\r\n throw new PresentationError(PresentationStatus.InvalidArgument, `Invalid argument: value = ${value}`);\r\n const sizeBefore = this.size;\r\n if (this.isKeySet(value)) {\r\n this.deleteKeySet(value);\r\n } else if (this.isKeysArray(value)) {\r\n for (const key of value)\r\n this.delete(key);\r\n } else if (Key.isEntityProps(value)) {\r\n this.delete({ className: value.classFullName, id: value.id! } as InstanceKey);\r\n } else if (Key.isInstanceKey(value)) {\r\n const set = this._instanceKeys.get(value.className.toLowerCase());\r\n if (set)\r\n set.delete(value.id);\r\n } else if (Key.isNodeKey(value)) {\r\n this._nodeKeys.delete(JSON.stringify(value));\r\n } else {\r\n throw new PresentationError(PresentationStatus.InvalidArgument, `Invalid argument: value = ${value}`);\r\n }\r\n if (this.size !== sizeBefore)\r\n this.recalculateGuid();\r\n return this;\r\n }\r\n\r\n /**\r\n * Check if this KeySet contains the specified key.\r\n * @param value The key to check.\r\n */\r\n public has(value: Key): boolean {\r\n if (!value)\r\n throw new PresentationError(PresentationStatus.InvalidArgument, `Invalid argument: value = ${value}`);\r\n if (Key.isEntityProps(value))\r\n return this.has({ className: value.classFullName, id: value.id! } as InstanceKey);\r\n if (Key.isInstanceKey(value)) {\r\n const set = this._instanceKeys.get(value.className.toLowerCase());\r\n return !!(set && set.has(value.id));\r\n }\r\n if (Key.isNodeKey(value))\r\n return this._nodeKeys.has(JSON.stringify(value));\r\n throw new PresentationError(PresentationStatus.InvalidArgument, `Invalid argument: value = ${value}`);\r\n }\r\n\r\n private hasKeySet(readonlyKeys: Readonly<KeySet>, checkType: \"all\" | \"any\"): boolean {\r\n // note: cast-away read-onlyness to access private members...\r\n const keys = readonlyKeys as KeySet;\r\n\r\n if (checkType === \"all\") {\r\n if (this._nodeKeys.size < keys._nodeKeys.size || this._instanceKeys.size < keys._instanceKeys.size)\r\n return false;\r\n if ([...keys._nodeKeys].some((key) => !this._nodeKeys.has(key)))\r\n return false;\r\n for (const otherEntry of keys._instanceKeys) {\r\n const thisEntryKeys = this._instanceKeys.get(otherEntry[\"0\"].toLowerCase());\r\n if (!thisEntryKeys || thisEntryKeys.size < otherEntry[\"1\"].size)\r\n return false;\r\n if ([...otherEntry[\"1\"]].some((key) => !thisEntryKeys.has(key)))\r\n return false;\r\n }\r\n return true;\r\n }\r\n\r\n // \"any\" check type\r\n if ([...keys._nodeKeys].some((key) => this._nodeKeys.has(key)))\r\n return true;\r\n for (const otherEntry of keys._instanceKeys) {\r\n const thisEntryKeys = this._instanceKeys.get(otherEntry[\"0\"].toLowerCase());\r\n if (thisEntryKeys && [...otherEntry[\"1\"]].some((key) => thisEntryKeys.has(key)))\r\n return true;\r\n }\r\n return false;\r\n }\r\n\r\n private hasKeysArray(keys: ReadonlyArray<Key>, checkType: \"all\" | \"any\"): boolean {\r\n if (checkType === \"all\") {\r\n if (this.size < keys.length)\r\n return false;\r\n for (const key of keys) {\r\n if (!this.has(key))\r\n return false;\r\n }\r\n return true;\r\n }\r\n\r\n // \"any\" check type\r\n for (const key of keys) {\r\n if (this.has(key))\r\n return true;\r\n }\r\n return false;\r\n }\r\n\r\n /**\r\n * Check if this KeySet contains all the specified keys.\r\n * @param keys The keys to check.\r\n */\r\n public hasAll(keys: Keys): boolean {\r\n if (!keys)\r\n throw new PresentationError(PresentationStatus.InvalidArgument, `Invalid argument: value = ${keys}`);\r\n if (this.isKeySet(keys))\r\n return this.hasKeySet(keys, \"all\");\r\n if (this.isKeysArray(keys))\r\n return this.hasKeysArray(keys, \"all\");\r\n throw new PresentationError(PresentationStatus.InvalidArgument, `Invalid argument: keys = ${keys}`);\r\n }\r\n\r\n /**\r\n * Check if this KeySet contains any of the specified keys.\r\n * @param keys The keys to check.\r\n */\r\n public hasAny(keys: Keys): boolean {\r\n if (!keys)\r\n throw new PresentationError(PresentationStatus.InvalidArgument, `Invalid argument: value = ${keys}`);\r\n if (this.isKeySet(keys))\r\n return this.hasKeySet(keys, \"any\");\r\n if (this.isKeysArray(keys))\r\n return this.hasKeysArray(keys, \"any\");\r\n throw new PresentationError(PresentationStatus.InvalidArgument, `Invalid argument: keys = ${keys}`);\r\n }\r\n\r\n /**\r\n * Get the number of keys stored in this KeySet.\r\n */\r\n public get size(): number {\r\n const nodeKeysCount = this._nodeKeys.size;\r\n let instanceIdsCount = 0;\r\n for (const set of this._instanceKeys.values())\r\n instanceIdsCount += set.size;\r\n return nodeKeysCount + instanceIdsCount;\r\n }\r\n\r\n /**\r\n * Is this KeySet currently empty.\r\n */\r\n public get isEmpty(): boolean {\r\n return 0 === this.size;\r\n }\r\n\r\n /** Iterate over all keys in this keyset. */\r\n public some(callback: (key: Key) => boolean) {\r\n for (const entry of this._instanceKeys) {\r\n const className = this._lowerCaseMap.get(entry[\"0\"].toLowerCase())!;\r\n if (some(entry[1], (id: Id64String) => callback({ className, id })))\r\n return true;\r\n }\r\n // eslint-disable-next-line deprecation/deprecation\r\n return some(this._nodeKeys, (serializedKey: string) => callback(NodeKey.fromJSON(JSON.parse(serializedKey))));\r\n }\r\n\r\n /** Iterate over all keys in this keyset. */\r\n public forEach(callback: (key: InstanceKey | NodeKey, index: number) => void) {\r\n let index = 0;\r\n this._instanceKeys.forEach((ids: Set<Id64String>, className: string) => {\r\n const recentClassName = this._lowerCaseMap.get(className.toLowerCase())!;\r\n ids.forEach((id: Id64String) => callback({ className: recentClassName, id }, index++));\r\n });\r\n this._nodeKeys.forEach((serializedKey: string) => {\r\n // eslint-disable-next-line deprecation/deprecation\r\n callback(NodeKey.fromJSON(JSON.parse(serializedKey)), index++);\r\n });\r\n }\r\n\r\n /** Iterate over all keys in this keyset in batches */\r\n public forEachBatch(batchSize: number, callback: (batch: KeySet, index: number) => void) {\r\n const size = this.size;\r\n const count = Math.ceil(size / batchSize);\r\n if (1 === count) {\r\n callback(this, 0);\r\n return;\r\n }\r\n let batch = new KeySet();\r\n let batchIndex = 0;\r\n let currBatchSize = 0;\r\n this.forEach((key, index) => {\r\n batch.add(key);\r\n ++currBatchSize;\r\n if (currBatchSize === batchSize || index === (size - 1)) {\r\n callback(batch, batchIndex++);\r\n batch = new KeySet();\r\n currBatchSize = 0;\r\n }\r\n });\r\n }\r\n\r\n /**\r\n * Serializes this KeySet to JSON\r\n * @public\r\n */\r\n public toJSON(): KeySetJSON {\r\n const instanceKeys: [string, string][] = [];\r\n for (const entry of this._instanceKeys.entries()) {\r\n if (entry[\"1\"].size > 0) {\r\n const className = this._lowerCaseMap.get(entry[\"0\"].toLowerCase());\r\n const compressedIds = CompressedId64Set.sortAndCompress(entry[\"1\"]);\r\n instanceKeys.push([className!, compressedIds.length > 0 ? compressedIds : Id64.invalid]);\r\n }\r\n }\r\n // eslint-disable-next-line deprecation/deprecation\r\n const nodeKeys: NodeKeyJSON[] = [];\r\n for (const serializedKey of this._nodeKeys.values())\r\n nodeKeys.push(JSON.parse(serializedKey));\r\n return {\r\n instanceKeys,\r\n nodeKeys,\r\n };\r\n }\r\n\r\n /**\r\n * Creates a KeySet from JSON\r\n * @public\r\n */\r\n public static fromJSON(json: KeySetJSON): KeySet {\r\n const keyset = new KeySet();\r\n keyset.addKeySetJSON(json);\r\n return keyset;\r\n }\r\n}\r\n\r\nconst some = <TItem>(set: Set<TItem>, cb: (item: TItem) => boolean) => {\r\n for (const item of set) {\r\n if (cb(item))\r\n return true;\r\n }\r\n return false;\r\n};\r\n"]}
|
|
@@ -12,16 +12,23 @@ export interface LabelCompositeValue {
|
|
|
12
12
|
/**
|
|
13
13
|
* JSON representation of [[LabelCompositeValue]]
|
|
14
14
|
* @public
|
|
15
|
+
* @deprecated in 3.x. Use [[LabelCompositeValue]].
|
|
15
16
|
*/
|
|
16
17
|
export interface LabelCompositeValueJSON {
|
|
17
18
|
separator: string;
|
|
18
|
-
values:
|
|
19
|
+
values: LabelDefinition[];
|
|
19
20
|
}
|
|
20
21
|
/** @public */
|
|
21
22
|
export declare namespace LabelCompositeValue {
|
|
22
|
-
/**
|
|
23
|
+
/**
|
|
24
|
+
* Serialize given [[LabelCompositeValue]] to JSON
|
|
25
|
+
* @deprecated in 3.x. Use [[LabelCompositeValue]].
|
|
26
|
+
*/
|
|
23
27
|
function toJSON(compositeValue: LabelCompositeValue): LabelCompositeValueJSON;
|
|
24
|
-
/**
|
|
28
|
+
/**
|
|
29
|
+
* Deserialize [[LabelCompositeValue]] from JSON
|
|
30
|
+
* @deprecated in 3.x. Use [[LabelCompositeValue]].
|
|
31
|
+
*/
|
|
25
32
|
function fromJSON(json: LabelCompositeValueJSON): LabelCompositeValue;
|
|
26
33
|
}
|
|
27
34
|
/**
|
|
@@ -30,10 +37,11 @@ export declare namespace LabelCompositeValue {
|
|
|
30
37
|
*/
|
|
31
38
|
export declare type LabelRawValue = string | number | boolean | LabelCompositeValue;
|
|
32
39
|
/**
|
|
33
|
-
* JSON representation of
|
|
40
|
+
* JSON representation of [[LabelRawValue]]
|
|
34
41
|
* @public
|
|
42
|
+
* @deprecated in 3.x. Use [[LabelRawValue]].
|
|
35
43
|
*/
|
|
36
|
-
export declare type LabelRawValueJSON =
|
|
44
|
+
export declare type LabelRawValueJSON = LabelRawValue;
|
|
37
45
|
/**
|
|
38
46
|
* Data structure that describes label definition.
|
|
39
47
|
* @public
|
|
@@ -49,32 +57,32 @@ export interface LabelDefinition {
|
|
|
49
57
|
/**
|
|
50
58
|
* JSON representation of [[LabelDefinition]]
|
|
51
59
|
* @public
|
|
60
|
+
* @deprecated in 3.x. Use [[LabelDefinition]].
|
|
52
61
|
*/
|
|
53
62
|
export interface LabelDefinitionJSON {
|
|
54
63
|
displayValue: string;
|
|
55
|
-
rawValue:
|
|
64
|
+
rawValue: LabelRawValue;
|
|
56
65
|
typeName: string;
|
|
57
66
|
}
|
|
58
67
|
/** @public */
|
|
59
68
|
export declare namespace LabelDefinition {
|
|
60
|
-
/**
|
|
69
|
+
/**
|
|
70
|
+
* Serialize given [[LabelDefinition]] to JSON
|
|
71
|
+
* @deprecated in 3.x. Use [[LabelDefinition]].
|
|
72
|
+
*/
|
|
61
73
|
function toJSON(labelDefinition: LabelDefinition): LabelDefinitionJSON;
|
|
62
|
-
/**
|
|
74
|
+
/**
|
|
75
|
+
* Deserialize [[LabelDefinition]] from JSON
|
|
76
|
+
* @deprecated in 3.x. Use [[LabelDefinition]].
|
|
77
|
+
*/
|
|
63
78
|
function fromJSON(json: LabelDefinitionJSON | string): LabelDefinition;
|
|
64
79
|
/** @internal */
|
|
65
80
|
const COMPOSITE_DEFINITION_TYPENAME = "composite";
|
|
66
|
-
/**
|
|
67
|
-
* Reviver function that can be used as a second argument for
|
|
68
|
-
* `JSON.parse` method when parsing [[LabelDefinition]] objects.
|
|
69
|
-
*
|
|
70
|
-
* @internal
|
|
71
|
-
*/
|
|
72
|
-
function reviver(key: string, value: any): any;
|
|
73
81
|
/** @internal */
|
|
74
82
|
function isCompositeDefinition(def: LabelDefinition): def is LabelDefinition & {
|
|
75
83
|
rawValue: LabelCompositeValue;
|
|
76
84
|
};
|
|
77
85
|
/** @internal */
|
|
78
|
-
function fromLabelString(label: string):
|
|
86
|
+
function fromLabelString(label: string): LabelDefinition;
|
|
79
87
|
}
|
|
80
88
|
//# sourceMappingURL=LabelDefinition.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LabelDefinition.d.ts","sourceRoot":"","sources":["../../../src/presentation-common/LabelDefinition.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH;;;GAGG;AACH,MAAM,WAAW,mBAAmB;IAClC,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,eAAe,EAAE,CAAC;CAC3B;AAED
|
|
1
|
+
{"version":3,"file":"LabelDefinition.d.ts","sourceRoot":"","sources":["../../../src/presentation-common/LabelDefinition.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH;;;GAGG;AACH,MAAM,WAAW,mBAAmB;IAClC,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,eAAe,EAAE,CAAC;CAC3B;AAED;;;;GAIG;AACH,MAAM,WAAW,uBAAuB;IACtC,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,eAAe,EAAE,CAAC;CAC3B;AAED,cAAc;AACd,yBAAiB,mBAAmB,CAAC;IACnC;;;OAGG;IAEH,SAAgB,MAAM,CAAC,cAAc,EAAE,mBAAmB,GAAG,uBAAuB,CAEnF;IAED;;;OAGG;IAEH,SAAgB,QAAQ,CAAC,IAAI,EAAE,uBAAuB,GAAG,mBAAmB,CAE3E;CACF;AAED;;;GAGG;AACH,oBAAY,aAAa,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,mBAAmB,CAAC;AAE5E;;;;GAIG;AACH,oBAAY,iBAAiB,GAAG,aAAa,CAAC;AAE9C;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC9B,6BAA6B;IAC7B,YAAY,EAAE,MAAM,CAAC;IACrB,yBAAyB;IACzB,QAAQ,EAAE,aAAa,CAAC;IACxB,6BAA6B;IAC7B,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;;;GAIG;AACH,MAAM,WAAW,mBAAmB;IAClC,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,aAAa,CAAC;IACxB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,cAAc;AACd,yBAAiB,eAAe,CAAC;IAC/B;;;OAGG;IAEH,SAAgB,MAAM,CAAC,eAAe,EAAE,eAAe,GAAG,mBAAmB,CAE5E;IAED;;;OAGG;IAEH,SAAgB,QAAQ,CAAC,IAAI,EAAE,mBAAmB,GAAG,MAAM,GAAG,eAAe,CAI5E;IAED,gBAAgB;IACT,MAAM,6BAA6B,cAAc,CAAC;IAEzD,gBAAgB;IAEhB,SAAgB,qBAAqB,CAAC,GAAG,EAAE,eAAe,GAAG,GAAG,IAAI,eAAe,GAAG;QAAE,QAAQ,EAAE,mBAAmB,CAAA;KAAE,CAEtH;IAED,gBAAgB;IAChB,SAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,eAAe,CAM9D;CACF"}
|
|
@@ -8,55 +8,52 @@
|
|
|
8
8
|
/** @public */
|
|
9
9
|
export var LabelCompositeValue;
|
|
10
10
|
(function (LabelCompositeValue) {
|
|
11
|
-
/**
|
|
11
|
+
/**
|
|
12
|
+
* Serialize given [[LabelCompositeValue]] to JSON
|
|
13
|
+
* @deprecated in 3.x. Use [[LabelCompositeValue]].
|
|
14
|
+
*/
|
|
15
|
+
// eslint-disable-next-line deprecation/deprecation
|
|
12
16
|
function toJSON(compositeValue) {
|
|
13
|
-
return { ...compositeValue
|
|
17
|
+
return { ...compositeValue };
|
|
14
18
|
}
|
|
15
19
|
LabelCompositeValue.toJSON = toJSON;
|
|
16
|
-
/**
|
|
20
|
+
/**
|
|
21
|
+
* Deserialize [[LabelCompositeValue]] from JSON
|
|
22
|
+
* @deprecated in 3.x. Use [[LabelCompositeValue]].
|
|
23
|
+
*/
|
|
24
|
+
// eslint-disable-next-line deprecation/deprecation
|
|
17
25
|
function fromJSON(json) {
|
|
18
|
-
return {
|
|
19
|
-
...json,
|
|
20
|
-
values: json.values.map(LabelDefinition.fromJSON),
|
|
21
|
-
};
|
|
26
|
+
return { ...json };
|
|
22
27
|
}
|
|
23
28
|
LabelCompositeValue.fromJSON = fromJSON;
|
|
24
29
|
})(LabelCompositeValue || (LabelCompositeValue = {}));
|
|
25
30
|
/** @public */
|
|
26
31
|
export var LabelDefinition;
|
|
27
32
|
(function (LabelDefinition) {
|
|
28
|
-
/**
|
|
33
|
+
/**
|
|
34
|
+
* Serialize given [[LabelDefinition]] to JSON
|
|
35
|
+
* @deprecated in 3.x. Use [[LabelDefinition]].
|
|
36
|
+
*/
|
|
37
|
+
// eslint-disable-next-line deprecation/deprecation
|
|
29
38
|
function toJSON(labelDefinition) {
|
|
30
|
-
return {
|
|
31
|
-
displayValue: labelDefinition.displayValue,
|
|
32
|
-
typeName: labelDefinition.typeName,
|
|
33
|
-
rawValue: isCompositeDefinition(labelDefinition) ? LabelCompositeValue.toJSON(labelDefinition.rawValue) : labelDefinition.rawValue,
|
|
34
|
-
};
|
|
39
|
+
return { ...labelDefinition };
|
|
35
40
|
}
|
|
36
41
|
LabelDefinition.toJSON = toJSON;
|
|
37
|
-
/**
|
|
42
|
+
/**
|
|
43
|
+
* Deserialize [[LabelDefinition]] from JSON
|
|
44
|
+
* @deprecated in 3.x. Use [[LabelDefinition]].
|
|
45
|
+
*/
|
|
46
|
+
// eslint-disable-next-line deprecation/deprecation
|
|
38
47
|
function fromJSON(json) {
|
|
39
48
|
if (typeof json === "string")
|
|
40
|
-
return JSON.parse(json
|
|
41
|
-
return {
|
|
42
|
-
...json,
|
|
43
|
-
rawValue: isCompositeDefinition(json) ? LabelCompositeValue.fromJSON(json.rawValue) : json.rawValue,
|
|
44
|
-
};
|
|
49
|
+
return JSON.parse(json);
|
|
50
|
+
return { ...json };
|
|
45
51
|
}
|
|
46
52
|
LabelDefinition.fromJSON = fromJSON;
|
|
47
53
|
/** @internal */
|
|
48
54
|
LabelDefinition.COMPOSITE_DEFINITION_TYPENAME = "composite";
|
|
49
|
-
/**
|
|
50
|
-
* Reviver function that can be used as a second argument for
|
|
51
|
-
* `JSON.parse` method when parsing [[LabelDefinition]] objects.
|
|
52
|
-
*
|
|
53
|
-
* @internal
|
|
54
|
-
*/
|
|
55
|
-
function reviver(key, value) {
|
|
56
|
-
return key === "" ? fromJSON(value) : value;
|
|
57
|
-
}
|
|
58
|
-
LabelDefinition.reviver = reviver;
|
|
59
55
|
/** @internal */
|
|
56
|
+
// istanbul ignore next
|
|
60
57
|
function isCompositeDefinition(def) {
|
|
61
58
|
return def.typeName === LabelDefinition.COMPOSITE_DEFINITION_TYPENAME;
|
|
62
59
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LabelDefinition.js","sourceRoot":"","sources":["../../../src/presentation-common/LabelDefinition.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;
|
|
1
|
+
{"version":3,"file":"LabelDefinition.js","sourceRoot":"","sources":["../../../src/presentation-common/LabelDefinition.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAqBH,cAAc;AACd,MAAM,KAAW,mBAAmB,CAkBnC;AAlBD,WAAiB,mBAAmB;IAClC;;;OAGG;IACH,mDAAmD;IACnD,SAAgB,MAAM,CAAC,cAAmC;QACxD,OAAO,EAAE,GAAG,cAAc,EAAE,CAAC;IAC/B,CAAC;IAFe,0BAAM,SAErB,CAAA;IAED;;;OAGG;IACH,mDAAmD;IACnD,SAAgB,QAAQ,CAAC,IAA6B;QACpD,OAAO,EAAE,GAAG,IAAI,EAAE,CAAC;IACrB,CAAC;IAFe,4BAAQ,WAEvB,CAAA;AACH,CAAC,EAlBgB,mBAAmB,KAAnB,mBAAmB,QAkBnC;AAuCD,cAAc;AACd,MAAM,KAAW,eAAe,CAsC/B;AAtCD,WAAiB,eAAe;IAC9B;;;OAGG;IACH,mDAAmD;IACnD,SAAgB,MAAM,CAAC,eAAgC;QACrD,OAAO,EAAE,GAAG,eAAe,EAAE,CAAC;IAChC,CAAC;IAFe,sBAAM,SAErB,CAAA;IAED;;;OAGG;IACH,mDAAmD;IACnD,SAAgB,QAAQ,CAAC,IAAkC;QACzD,IAAI,OAAO,IAAI,KAAK,QAAQ;YAC1B,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC1B,OAAO,EAAE,GAAG,IAAI,EAAE,CAAC;IACrB,CAAC;IAJe,wBAAQ,WAIvB,CAAA;IAED,gBAAgB;IACH,6CAA6B,GAAG,WAAW,CAAC;IAEzD,gBAAgB;IAChB,uBAAuB;IACvB,SAAgB,qBAAqB,CAAC,GAAoB;QACxD,OAAO,GAAG,CAAC,QAAQ,KAAK,gBAAA,6BAA6B,CAAC;IACxD,CAAC;IAFe,qCAAqB,wBAEpC,CAAA;IAED,gBAAgB;IAChB,SAAgB,eAAe,CAAC,KAAa;QAC3C,OAAO;YACL,YAAY,EAAE,KAAK;YACnB,QAAQ,EAAE,KAAK;YACf,QAAQ,EAAE,QAAQ;SACnB,CAAC;IACJ,CAAC;IANe,+BAAe,kBAM9B,CAAA;AACH,CAAC,EAtCgB,eAAe,KAAf,eAAe,QAsC/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 Hierarchies\r\n */\r\n\r\n/**\r\n * Data structure that describes raw composite label value.\r\n * @public\r\n */\r\nexport interface LabelCompositeValue {\r\n separator: string;\r\n values: LabelDefinition[];\r\n}\r\n\r\n/**\r\n * JSON representation of [[LabelCompositeValue]]\r\n * @public\r\n * @deprecated in 3.x. Use [[LabelCompositeValue]].\r\n */\r\nexport interface LabelCompositeValueJSON {\r\n separator: string;\r\n values: LabelDefinition[];\r\n}\r\n\r\n/** @public */\r\nexport namespace LabelCompositeValue {\r\n /**\r\n * Serialize given [[LabelCompositeValue]] to JSON\r\n * @deprecated in 3.x. Use [[LabelCompositeValue]].\r\n */\r\n // eslint-disable-next-line deprecation/deprecation\r\n export function toJSON(compositeValue: LabelCompositeValue): LabelCompositeValueJSON {\r\n return { ...compositeValue };\r\n }\r\n\r\n /**\r\n * Deserialize [[LabelCompositeValue]] from JSON\r\n * @deprecated in 3.x. Use [[LabelCompositeValue]].\r\n */\r\n // eslint-disable-next-line deprecation/deprecation\r\n export function fromJSON(json: LabelCompositeValueJSON): LabelCompositeValue {\r\n return { ...json };\r\n }\r\n}\r\n\r\n/**\r\n * Type definition of label raw value.\r\n * @public\r\n */\r\nexport type LabelRawValue = string | number | boolean | LabelCompositeValue;\r\n\r\n/**\r\n * JSON representation of [[LabelRawValue]]\r\n * @public\r\n * @deprecated in 3.x. Use [[LabelRawValue]].\r\n */\r\nexport type LabelRawValueJSON = LabelRawValue;\r\n\r\n/**\r\n * Data structure that describes label definition.\r\n * @public\r\n */\r\nexport interface LabelDefinition {\r\n /** Display value of label */\r\n displayValue: string;\r\n /** Raw value of label */\r\n rawValue: LabelRawValue;\r\n /** Type name of raw value */\r\n typeName: string;\r\n}\r\n\r\n/**\r\n * JSON representation of [[LabelDefinition]]\r\n * @public\r\n * @deprecated in 3.x. Use [[LabelDefinition]].\r\n */\r\nexport interface LabelDefinitionJSON {\r\n displayValue: string;\r\n rawValue: LabelRawValue;\r\n typeName: string;\r\n}\r\n\r\n/** @public */\r\nexport namespace LabelDefinition {\r\n /**\r\n * Serialize given [[LabelDefinition]] to JSON\r\n * @deprecated in 3.x. Use [[LabelDefinition]].\r\n */\r\n // eslint-disable-next-line deprecation/deprecation\r\n export function toJSON(labelDefinition: LabelDefinition): LabelDefinitionJSON {\r\n return { ...labelDefinition };\r\n }\r\n\r\n /**\r\n * Deserialize [[LabelDefinition]] from JSON\r\n * @deprecated in 3.x. Use [[LabelDefinition]].\r\n */\r\n // eslint-disable-next-line deprecation/deprecation\r\n export function fromJSON(json: LabelDefinitionJSON | string): LabelDefinition {\r\n if (typeof json === \"string\")\r\n return JSON.parse(json);\r\n return { ...json };\r\n }\r\n\r\n /** @internal */\r\n export const COMPOSITE_DEFINITION_TYPENAME = \"composite\";\r\n\r\n /** @internal */\r\n // istanbul ignore next\r\n export function isCompositeDefinition(def: LabelDefinition): def is LabelDefinition & { rawValue: LabelCompositeValue } {\r\n return def.typeName === COMPOSITE_DEFINITION_TYPENAME;\r\n }\r\n\r\n /** @internal */\r\n export function fromLabelString(label: string): LabelDefinition {\r\n return {\r\n displayValue: label,\r\n rawValue: label,\r\n typeName: \"string\",\r\n };\r\n }\r\n}\r\n"]}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/** @packageDocumentation
|
|
2
2
|
* @module Core
|
|
3
3
|
*/
|
|
4
|
-
import {
|
|
4
|
+
import { NodeKey } from "./hierarchy/Key";
|
|
5
5
|
import { RulesetVariableJSON } from "./RulesetVariables";
|
|
6
6
|
/** @internal */
|
|
7
7
|
export declare const PRESENTATION_IPC_CHANNEL_NAME = "presentation-ipc-interface";
|
|
@@ -36,6 +36,6 @@ export interface PresentationIpcInterface {
|
|
|
36
36
|
/** Unsets ruleset variable value. */
|
|
37
37
|
unsetRulesetVariable(params: UnsetRulesetVariableParams): Promise<void>;
|
|
38
38
|
/** Updates hierarchy state saved on the backend. Hierarchy state is used when performing updates after iModel data changes */
|
|
39
|
-
updateHierarchyState(params: UpdateHierarchyStateParams<
|
|
39
|
+
updateHierarchyState(params: UpdateHierarchyStateParams<NodeKey>): Promise<void>;
|
|
40
40
|
}
|
|
41
41
|
//# sourceMappingURL=PresentationIpcInterface.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PresentationIpcInterface.d.ts","sourceRoot":"","sources":["../../../src/presentation-common/PresentationIpcInterface.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"PresentationIpcInterface.d.ts","sourceRoot":"","sources":["../../../src/presentation-common/PresentationIpcInterface.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAC1C,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAEzD,gBAAgB;AAChB,eAAO,MAAM,6BAA6B,+BAA+B,CAAC;AAE1E,gBAAgB;AAChB,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,gBAAgB;AAChB,MAAM,WAAW,wBAAwB,CAAC,SAAS,CAAE,SAAQ,eAAe;IAC1E,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,SAAS,CAAC;CACrB;AAED,gBAAgB;AAChB,MAAM,WAAW,0BAA2B,SAAQ,eAAe;IACjE,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,gBAAgB;AAChB,MAAM,WAAW,0BAA0B,CAAC,QAAQ,CAAE,SAAQ,eAAe;IAC3E,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,KAAK,CAAC;QAClB,OAAO,EAAE,QAAQ,GAAG,SAAS,CAAC;QAC9B,UAAU,CAAC,EAAE,OAAO,CAAC;QACrB,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;KAC5B,CAAC,CAAC;CACJ;AAED,gBAAgB;AAChB,MAAM,WAAW,wBAAwB;IACvC,mCAAmC;IACnC,kBAAkB,CAAC,MAAM,EAAE,wBAAwB,CAAC,mBAAmB,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEzF,qCAAqC;IACrC,oBAAoB,CAAC,MAAM,EAAE,0BAA0B,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAExE,8HAA8H;IAC9H,oBAAoB,CAAC,MAAM,EAAE,0BAA0B,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAClF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PresentationIpcInterface.js","sourceRoot":"","sources":["../../../src/presentation-common/PresentationIpcInterface.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAKH,gBAAgB;AAChB,MAAM,CAAC,MAAM,6BAA6B,GAAG,4BAA4B,CAAC","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 {
|
|
1
|
+
{"version":3,"file":"PresentationIpcInterface.js","sourceRoot":"","sources":["../../../src/presentation-common/PresentationIpcInterface.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAKH,gBAAgB;AAChB,MAAM,CAAC,MAAM,6BAA6B,GAAG,4BAA4B,CAAC","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 } from \"./hierarchy/Key\";\r\nimport { RulesetVariableJSON } from \"./RulesetVariables\";\r\n\r\n/** @internal */\r\nexport const PRESENTATION_IPC_CHANNEL_NAME = \"presentation-ipc-interface\";\r\n\r\n/** @internal */\r\nexport interface CommonIpcParams {\r\n clientId: string;\r\n}\r\n\r\n/** @internal */\r\nexport interface SetRulesetVariableParams<TVariable> extends CommonIpcParams {\r\n rulesetId: string;\r\n variable: TVariable;\r\n}\r\n\r\n/** @internal */\r\nexport interface UnsetRulesetVariableParams extends CommonIpcParams {\r\n rulesetId: string;\r\n variableId: string;\r\n}\r\n\r\n/** @internal */\r\nexport interface UpdateHierarchyStateParams<TNodeKey> extends CommonIpcParams {\r\n rulesetId: string;\r\n imodelKey: string;\r\n stateChanges: Array<{\r\n nodeKey: TNodeKey | undefined;\r\n isExpanded?: boolean;\r\n instanceFilters?: string[];\r\n }>;\r\n}\r\n\r\n/** @internal */\r\nexport interface PresentationIpcInterface {\r\n /** Sets ruleset variable value. */\r\n setRulesetVariable(params: SetRulesetVariableParams<RulesetVariableJSON>): Promise<void>;\r\n\r\n /** Unsets ruleset variable value. */\r\n unsetRulesetVariable(params: UnsetRulesetVariableParams): Promise<void>;\r\n\r\n /** Updates hierarchy state saved on the backend. Hierarchy state is used when performing updates after iModel data changes */\r\n updateHierarchyState(params: UpdateHierarchyStateParams<NodeKey>): Promise<void>;\r\n}\r\n"]}
|
|
@@ -52,16 +52,20 @@ export interface HierarchyRequestOptions<TIModel, TNodeKey, TRulesetVariable = R
|
|
|
52
52
|
parentKey?: TNodeKey;
|
|
53
53
|
/**
|
|
54
54
|
* An instance filter that should be applied for this hierarchy level.
|
|
55
|
-
*
|
|
55
|
+
*
|
|
56
|
+
* **Note:** May only be used on hierarchy levels that support filtering - check [[NavNode.supportsFiltering]] before
|
|
57
|
+
* requesting filtered children.
|
|
58
|
+
*
|
|
59
|
+
* @beta
|
|
56
60
|
*/
|
|
57
61
|
instanceFilter?: InstanceFilterDefinition;
|
|
58
62
|
}
|
|
59
63
|
/**
|
|
60
64
|
* Params for hierarchy level descriptor requests.
|
|
61
|
-
* @
|
|
65
|
+
* @beta
|
|
62
66
|
*/
|
|
63
67
|
export interface HierarchyLevelDescriptorRequestOptions<TIModel, TNodeKey, TRulesetVariable = RulesetVariable> extends RequestOptionsWithRuleset<TIModel, TRulesetVariable> {
|
|
64
|
-
/** Key of the parent node to get descriptor for */
|
|
68
|
+
/** Key of the parent node to get hierarchy level descriptor for. */
|
|
65
69
|
parentKey?: TNodeKey;
|
|
66
70
|
}
|
|
67
71
|
/**
|
|
@@ -87,10 +91,10 @@ export interface FilterByTextHierarchyRequestOptions<TIModel, TRulesetVariable =
|
|
|
87
91
|
}
|
|
88
92
|
/**
|
|
89
93
|
* Request type for content sources requests.
|
|
90
|
-
* @
|
|
94
|
+
* @public
|
|
91
95
|
*/
|
|
92
96
|
export interface ContentSourcesRequestOptions<TIModel> extends RequestOptions<TIModel> {
|
|
93
|
-
/** Full names of classes to get content sources for. */
|
|
97
|
+
/** Full names of classes to get content sources for. Format for a full class name: `SchemaName:ClassName`. */
|
|
94
98
|
classes: string[];
|
|
95
99
|
}
|
|
96
100
|
/**
|
|
@@ -132,12 +136,12 @@ export interface DistinctValuesRequestOptions<TIModel, TDescriptor, TKeySet, TRu
|
|
|
132
136
|
}
|
|
133
137
|
/**
|
|
134
138
|
* Request type for element properties requests
|
|
135
|
-
* @
|
|
139
|
+
* @public
|
|
136
140
|
*/
|
|
137
141
|
export declare type ElementPropertiesRequestOptions<TIModel> = SingleElementPropertiesRequestOptions<TIModel> | MultiElementPropertiesRequestOptions<TIModel>;
|
|
138
142
|
/**
|
|
139
143
|
* Request type for single element properties requests.
|
|
140
|
-
* @
|
|
144
|
+
* @public
|
|
141
145
|
*/
|
|
142
146
|
export interface SingleElementPropertiesRequestOptions<TIModel> extends RequestOptions<TIModel> {
|
|
143
147
|
/** ID of the element to get properties for. */
|
|
@@ -145,18 +149,19 @@ export interface SingleElementPropertiesRequestOptions<TIModel> extends RequestO
|
|
|
145
149
|
}
|
|
146
150
|
/**
|
|
147
151
|
* Request type for multiple elements properties requests.
|
|
148
|
-
* @
|
|
152
|
+
* @public
|
|
149
153
|
*/
|
|
150
154
|
export interface MultiElementPropertiesRequestOptions<TIModel> extends RequestOptions<TIModel> {
|
|
151
|
-
/**
|
|
152
|
-
*
|
|
155
|
+
/**
|
|
156
|
+
* Classes of the elements to get properties for. If [[elementClasses]] is `undefined`, all classes
|
|
157
|
+
* are used. Classes should be specified in one of these formats: "<schema name or alias>.<class_name>" or
|
|
153
158
|
* "<schema name or alias>:<class_name>".
|
|
154
159
|
*/
|
|
155
160
|
elementClasses?: string[];
|
|
156
161
|
}
|
|
157
162
|
/**
|
|
158
163
|
* Request type for content instance keys' requests.
|
|
159
|
-
* @
|
|
164
|
+
* @public
|
|
160
165
|
*/
|
|
161
166
|
export interface ContentInstanceKeysRequestOptions<TIModel, TKeySet, TRulesetVariable = RulesetVariable> extends Paged<RequestOptionsWithRuleset<TIModel, TRulesetVariable>> {
|
|
162
167
|
/**
|
|
@@ -190,8 +195,8 @@ export interface DisplayLabelsRequestOptions<TIModel, TInstanceKey> extends Requ
|
|
|
190
195
|
export interface SelectionScopeRequestOptions<TIModel> extends RequestOptions<TIModel> {
|
|
191
196
|
}
|
|
192
197
|
/**
|
|
193
|
-
* Request options used for calculating selection based on
|
|
194
|
-
* @
|
|
198
|
+
* Request options used for calculating selection based on given instance keys and selection scope.
|
|
199
|
+
* @public
|
|
195
200
|
*/
|
|
196
201
|
export interface ComputeSelectionRequestOptions<TIModel> extends RequestOptions<TIModel> {
|
|
197
202
|
elementIds: Id64String[];
|
|
@@ -243,7 +248,7 @@ export declare type Prioritized<TOptions extends {}> = TOptions & {
|
|
|
243
248
|
};
|
|
244
249
|
/**
|
|
245
250
|
* Checks if supplied request options are for single or multiple element properties.
|
|
246
|
-
* @
|
|
251
|
+
* @internal
|
|
247
252
|
*/
|
|
248
253
|
export declare function isSingleElementPropertiesRequestOptions<TIModel>(options: ElementPropertiesRequestOptions<TIModel>): options is SingleElementPropertiesRequestOptions<TIModel>;
|
|
249
254
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PresentationManagerOptions.d.ts","sourceRoot":"","sources":["../../../src/presentation-common/PresentationManagerOptions.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,MAAM,CAAC;AACnC,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAC1C,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAEjE;;;GAGG;AACH,MAAM,WAAW,cAAc,CAAC,OAAO;IACrC,kCAAkC;IAClC,MAAM,EAAE,OAAO,CAAC;IAEhB,+DAA+D;IAC/D,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;;OAGG;IACH,UAAU,CAAC,EAAE,aAAa,CAAC;IAE3B;;;;OAIG;IACH,SAAS,CAAC,EAAE,eAAe,CAAC;CAC7B;AAED;;;;;GAKG;AACH,MAAM,WAAW,yBAAyB,CAAC,OAAO,EAAE,gBAAgB,GAAG,eAAe,CAAE,SAAQ,cAAc,CAAC,OAAO,CAAC;IACrH,+DAA+D;IAC/D,WAAW,EAAE,OAAO,GAAG,MAAM,CAAC;IAE9B,oDAAoD;IACpD,gBAAgB,CAAC,EAAE,gBAAgB,EAAE,CAAC;CACvC;AAED;;;GAGG;AACH,MAAM,WAAW,uBAAuB,CAAC,OAAO,EAAE,QAAQ,EAAE,gBAAgB,GAAG,eAAe,CAAE,SAAQ,yBAAyB,CAAC,OAAO,EAAE,gBAAgB,CAAC;IAC1J,iDAAiD;IACjD,SAAS,CAAC,EAAE,QAAQ,CAAC;IAErB
|
|
1
|
+
{"version":3,"file":"PresentationManagerOptions.d.ts","sourceRoot":"","sources":["../../../src/presentation-common/PresentationManagerOptions.ts"],"names":[],"mappings":"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"}
|
|
@@ -11,7 +11,7 @@ export function isComputeSelectionRequestOptions(options) {
|
|
|
11
11
|
}
|
|
12
12
|
/**
|
|
13
13
|
* Checks if supplied request options are for single or multiple element properties.
|
|
14
|
-
* @
|
|
14
|
+
* @internal
|
|
15
15
|
*/
|
|
16
16
|
export function isSingleElementPropertiesRequestOptions(options) {
|
|
17
17
|
return options.elementId !== undefined;
|