@itwin/presentation-frontend
Version:
Frontend of iModel.js Presentation library
173 lines (172 loc) • 6.83 kB
JSON
{
"$schema": "../../../node_modules/@itwin/presentation-common/Ruleset.schema.json",
"id": "presentation-frontend/HiliteRules",
"rules": [
{
"ruleType": "Content",
"condition": "ContentDisplayType = \"Graphics\" ANDALSO SelectedNode.IsOfClass(\"Subject\", \"BisCore\")",
"onlyIfNotHandled": true,
"specifications": [
{
"specType": "ContentRelatedInstances",
"relationshipPaths": [
[
{
"relationship": {
"schemaName": "BisCore",
"className": "ElementOwnsChildElements"
},
"direction": "Forward",
"targetClass": {
"schemaName": "BisCore",
"className": "Subject"
},
"count": "*"
},
{
"relationship": {
"schemaName": "BisCore",
"className": "ElementOwnsChildElements"
},
"direction": "Forward",
"targetClass": {
"schemaName": "BisCore",
"className": "PhysicalPartition"
}
}
]
]
}
]
},
{
"ruleType": "Content",
"condition": "ContentDisplayType = \"Graphics\" ANDALSO SelectedNode.IsOfClass(\"Model\", \"BisCore\")",
"onlyIfNotHandled": true,
"specifications": [
{
"specType": "SelectedNodeInstances"
}
]
},
{
"ruleType": "ExtendedData",
"condition": "ThisNode.IsOfClass(\"Model\", \"BisCore\") ORELSE ThisNode.IsOfClass(\"PhysicalPartition\", \"BisCore\")",
"items": {
"isModel": "true"
}
},
{
"ruleType": "Content",
"condition": "ContentDisplayType = \"Graphics\" ANDALSO SelectedNode.IsOfClass(\"Category\", \"BisCore\")",
"onlyIfNotHandled": true,
"specifications": [
{
"specType": "ContentRelatedInstances",
"relationshipPaths": [
{
"relationship": {
"schemaName": "BisCore",
"className": "CategoryOwnsSubCategories"
},
"direction": "Forward"
}
]
}
]
},
{
"ruleType": "Content",
"condition": "ContentDisplayType = \"Graphics\" ANDALSO SelectedNode.IsOfClass(\"SubCategory\", \"BisCore\")",
"onlyIfNotHandled": true,
"specifications": [
{
"specType": "SelectedNodeInstances"
}
]
},
{
"ruleType": "ExtendedData",
"condition": "ThisNode.IsOfClass(\"SubCategory\", \"BisCore\")",
"items": {
"isSubCategory": "true"
}
},
{
"ruleType": "Content",
"condition": "ContentDisplayType = \"Graphics\" ANDALSO SelectedNode.IsOfClass(\"GroupInformationElement\", \"BisCore\")",
"onlyIfNotHandled": true,
"specifications": [
{
"specType": "ContentRelatedInstances",
"relationshipPaths": [
[
{
"relationship": {
"schemaName": "BisCore",
"className": "ElementGroupsMembers"
},
"direction": "Forward"
},
{
"relationship": {
"schemaName": "BisCore",
"className": "ElementOwnsChildElements"
},
"direction": "Forward",
"count": "*"
}
]
],
"instanceFilter": "this.IsOfClass(\"GeometricElement\", \"BisCore\")"
}
]
},
{
"ruleType": "Content",
"condition": "ContentDisplayType = \"Graphics\" ANDALSO SelectedNode.IsOfClass(\"GeometricElement\", \"BisCore\")",
"onlyIfNotHandled": true,
"specifications": [
{
"specType": "ContentRelatedInstances",
"relationshipPaths": [
{
"relationship": {
"schemaName": "BisCore",
"className": "ElementOwnsChildElements"
},
"direction": "Forward",
"count": "*"
}
],
"instanceFilter": "this.IsOfClass(\"GeometricElement\", \"BisCore\")"
},
{
"specType": "SelectedNodeInstances"
}
]
},
{
"ruleType": "Content",
"condition": "ContentDisplayType = \"Graphics\" ANDALSO SelectedNode.IsOfClass(\"Element\", \"BisCore\")",
"priority": 0,
"onlyIfNotHandled": true,
"specifications": [
{
"specType": "ContentRelatedInstances",
"relationshipPaths": [
{
"relationship": {
"schemaName": "BisCore",
"className": "ElementOwnsChildElements"
},
"direction": "Forward",
"count": "*"
}
],
"instanceFilter": "this.IsOfClass(\"GeometricElement\", \"BisCore\")"
}
]
}
]
}