diff options
| author | nexxeln <[email protected]> | 2025-12-02 18:35:15 +0000 |
|---|---|---|
| committer | nexxeln <[email protected]> | 2025-12-02 18:35:15 +0000 |
| commit | bb3ab0271e34e76db5461b16b7823f823eaf63e9 (patch) | |
| tree | 86aebdb43add602c6836b5c22ae59a918e1c02a5 /packages/memory-graph/src | |
| parent | Fix: Update discord links in README.md and CONTRIBUTING.md (#598) (diff) | |
| download | supermemory-add-merge-relations.tar.xz supermemory-add-merge-relations.zip | |
add support for merges relation in the graph (#590)add-merge-relations
new relation called "merges"
we use orange dashed line to represent it
works just like how extends, updates, etc are displayed
Diffstat (limited to 'packages/memory-graph/src')
| -rw-r--r-- | packages/memory-graph/src/components/graph-canvas.tsx | 3 | ||||
| -rw-r--r-- | packages/memory-graph/src/components/legend.tsx | 6 | ||||
| -rw-r--r-- | packages/memory-graph/src/constants.ts | 1 | ||||
| -rw-r--r-- | packages/memory-graph/src/types.ts | 2 |
4 files changed, 9 insertions, 3 deletions
diff --git a/packages/memory-graph/src/components/graph-canvas.tsx b/packages/memory-graph/src/components/graph-canvas.tsx index 59efa74d..ae233a19 100644 --- a/packages/memory-graph/src/components/graph-canvas.tsx +++ b/packages/memory-graph/src/components/graph-canvas.tsx @@ -241,7 +241,8 @@ export const GraphCanvas = memo<GraphCanvasProps>( connectionColor = colors.connection.medium; } else if (edge.edgeType === "version") { // Version chains: Double line effect with relation-specific colors - dashPattern = []; + // Special dashed pattern for "merges" relation + dashPattern = edge.relationType === "merges" ? [8, 4] : []; connectionColor = edge.color || colors.relations.updates; opacity = 0.8; lineWidth = 2; diff --git a/packages/memory-graph/src/components/legend.tsx b/packages/memory-graph/src/components/legend.tsx index 16f588a9..b36c8ffe 100644 --- a/packages/memory-graph/src/components/legend.tsx +++ b/packages/memory-graph/src/components/legend.tsx @@ -229,11 +229,15 @@ export const Legend = memo(function Legend({ ["updates", colors.relations.updates], ["extends", colors.relations.extends], ["derives", colors.relations.derives], + ["merges", colors.relations.merges], ].map(([label, color]) => ( <div className={styles.legendItem} key={label}> <div className={styles.relationLine} - style={{ borderColor: color }} + style={{ + borderColor: color, + borderStyle: label === "merges" ? "dashed" : "solid" + }} /> <span className={styles.legendText} diff --git a/packages/memory-graph/src/constants.ts b/packages/memory-graph/src/constants.ts index 23193601..b93912e0 100644 --- a/packages/memory-graph/src/constants.ts +++ b/packages/memory-graph/src/constants.ts @@ -46,6 +46,7 @@ export const colors = { updates: "rgba(147, 77, 253, 0.5)", // purple extends: "rgba(16, 185, 129, 0.5)", // green derives: "rgba(147, 197, 253, 0.5)", // blue + merges: "rgba(251, 165, 36, 0.5)", // orange }, }; diff --git a/packages/memory-graph/src/types.ts b/packages/memory-graph/src/types.ts index 0a80df22..df783cb0 100644 --- a/packages/memory-graph/src/types.ts +++ b/packages/memory-graph/src/types.ts @@ -15,7 +15,7 @@ export interface GraphNode { isDragging: boolean; } -export type MemoryRelation = "updates" | "extends" | "derives"; +export type MemoryRelation = "updates" | "extends" | "derives" | "merges"; export interface GraphEdge { id: string; |