| 845 | // Automatic Layout --------------------------------------------------------- |
| 846 | |
| 847 | function filterLayoutElements(): { |
| 848 | filteredNodes: Node[]; |
| 849 | filteredEdges: Edge[]; |
| 850 | } { |
| 851 | if (nodes.length === 0) return { filteredNodes: [], filteredEdges: [] }; |
| 852 | |
| 853 | const filteredNodes = nodes; |
| 854 | const filteredEdges = edges.filter( |
| 855 | (edge) => |
| 856 | edge.data.state === TransfershipEdgeStates.REVEALED && |
| 857 | nodesRecord[edge.source] && |
| 858 | nodesRecord[edge.target], |
| 859 | ); |
| 860 | return { filteredNodes, filteredEdges }; |
| 861 | } |
| 862 | |
| 863 | function setLayoutedElements( |
| 864 | filteredNodes: Node[], |