+ isEditing ? (
+
-
{t('settings.memory.editor')}
-
MARKDOWN
+
+ {t('settings.memory.editor')}
+ MARKDOWN
+
+
+
+
+
+
-
+ ) : (
+
-
{t('settings.memory.preview')}
-
{t('settings.memory.rendered')}
+
+ {t('settings.memory.preview')}
+ {t('settings.memory.rendered')}
+
+
-
+ )
) : (
} text={isLoadingFile ? t('common.loading') : t('settings.memory.selectFile')} />
diff --git a/desktop/src/stores/memoryStore.ts b/desktop/src/stores/memoryStore.ts
index e32d08ef..1052e2b6 100644
--- a/desktop/src/stores/memoryStore.ts
+++ b/desktop/src/stores/memoryStore.ts
@@ -20,7 +20,7 @@ type MemoryStore = {
fetchFiles: (projectId: string) => Promise
openFile: (projectId: string, path: string) => Promise
updateDraft: (content: string) => void
- saveFile: () => Promise
+ saveFile: () => Promise
createFile: (projectId: string, path: string, content: string) => Promise
}
@@ -100,7 +100,7 @@ export const useMemoryStore = create((set, get) => ({
saveFile: async () => {
const { selectedProjectId, selectedFile, draftContent } = get()
- if (!selectedProjectId || !selectedFile) return
+ if (!selectedProjectId || !selectedFile) return false
set({ isSaving: true, error: null })
try {
const { file } = await memoryApi.saveFile({
@@ -119,8 +119,10 @@ export const useMemoryStore = create((set, get) => ({
lastSavedAt: file.updatedAt,
})
await get().fetchFiles(selectedProjectId)
+ return true
} catch (err) {
set({ error: (err as Error).message, isSaving: false })
+ return false
}
},