{#if loading}
Loading memory graph...
{:else if error}
◎
Your Mind Awaits
{error}
{:else if graphData}
{/if}
{isDreaming ? '◎ Dreaming...' : '◎ Dream'}
{#if graphData}
{graphData.nodeCount} nodes / {graphData.edgeCount} edges
{/if}
{#if selectedMemory}
Memory Detail
selectedMemory = null} class="text-dim hover:text-text text-lg">×
{selectedMemory.nodeType}
{#each selectedMemory.tags as tag}
{tag}
{/each}
{selectedMemory.content}
Retention
{(selectedMemory.retentionStrength * 100).toFixed(1)}%
Created: {new Date(selectedMemory.createdAt).toLocaleDateString()}
Reviews: {selectedMemory.reviewCount ?? 0}
{#if selectedMemory.source}
Source: {selectedMemory.source}
{/if}
selectedMemory && api.memories.promote(selectedMemory.id)} class="flex-1 px-3 py-2 rounded bg-recall/20 text-recall text-xs hover:bg-recall/30 transition" > Promote
selectedMemory && api.memories.demote(selectedMemory.id)} class="flex-1 px-3 py-2 rounded bg-decay/20 text-decay text-xs hover:bg-decay/30 transition" > Demote
{/if}