diff --git a/misc/diagram-util/src/main/java/org/ballerinalang/diagramutil/SyntaxTreeMapGenerator.java b/misc/diagram-util/src/main/java/org/ballerinalang/diagramutil/SyntaxTreeMapGenerator.java index 072e1627a826..e2151f30a22e 100644 --- a/misc/diagram-util/src/main/java/org/ballerinalang/diagramutil/SyntaxTreeMapGenerator.java +++ b/misc/diagram-util/src/main/java/org/ballerinalang/diagramutil/SyntaxTreeMapGenerator.java @@ -37,6 +37,7 @@ import io.ballerina.compiler.syntax.tree.ChildNodeEntry; import io.ballerina.compiler.syntax.tree.ChildNodeList; import io.ballerina.compiler.syntax.tree.ClassDefinitionNode; +import io.ballerina.compiler.syntax.tree.ClientResourceAccessActionNode; import io.ballerina.compiler.syntax.tree.Minutiae; import io.ballerina.compiler.syntax.tree.MinutiaeList; import io.ballerina.compiler.syntax.tree.ModulePartNode; @@ -302,6 +303,16 @@ protected JsonElement transformSyntaxNode(Node node) { markVisibleEp(variableSymbol, symbolJson, remoteMethodCallActionNode.expression(), true); } } + } else if (node.kind() == SyntaxKind.CLIENT_RESOURCE_ACCESS_ACTION) { + ClientResourceAccessActionNode resourceCallActionNode = (ClientResourceAccessActionNode) node; + if (semanticModel != null) { + Optional expressionSymbol = this.semanticModel.symbol( + resourceCallActionNode.expression()); + if (expressionSymbol.isPresent() && + expressionSymbol.get() instanceof VariableSymbol variableSymbol) { + markVisibleEp(variableSymbol, symbolJson, resourceCallActionNode.expression(), true); + } + } } nodeJson.add("typeData", symbolJson);