You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
----
Implement External Nodes for Groups
This commit introduces the concept of external nodes to Groups.
It allows a node in the parent graph to be connected to a node
in a group without having to include the external node in the group itself.
The main changes are:
- External Target: The External target provides a `Map<string, { nodes: string[], point: Point, type: 'in'|'out' }>` for each Group
- `internalEdges` input in the Graph: This array is used to provide the edges that are connecting the Group with external nodes
- Rendering logic: The external target node is rendered with a default proxy node template.
- Rendering logic: The edges between the external nodes and internal nodes are rendered.
This feature enable the following:
- Connect a Node in the main DAG to a Node in a Group without having to declare the node in the Group
- Connect a Group with external Nodes
- Keep a consistent look for the group.
- Create complex diagrams using subgraphs.
Limitations
- If two nodes are in different groups or have a parental difference of more than 1 then we can't show edges between them yet.
- This feature currently works in layout direction left to right or right to left, while using layout top to bottom or bottom to top there is some shifting in x axis of the node
PiperOrigin-RevId: 777884537
0 commit comments