(fp?: string)
| 18 | } |
| 19 | |
| 20 | function getClusterKey(fp?: string): string { |
| 21 | if (!fp) return ""; |
| 22 | const parts = fp.split("/"); |
| 23 | return parts.slice(0, Math.min(2, parts.length)).join("/"); |
| 24 | } |
| 25 | |
| 26 | /* Edge type → color (matches the filter panel) */ |
| 27 | const EDGE_TYPE_COLORS: Record<string, string> = { |