feat: Enable file editing and saving (#252)
## Summary - Adds file writing capability to Monaco editor in the file viewer - Implements writeFile API on the server for workspace files - Integrates save functionality into the file viewer UI with proper state management ## Bug Fixes (Review Feedback) - Fixed failed save discarding edits when switching files - now checks save result and only proceeds if successful - Fixed refresh overwriting dirty editor state - now prompts for confirmation before discarding edits - Fixed save button unable to save empty files - changed check from `if (content)` to `if (content !== undefined && content !== null)` - Added agent edit conflict detection - when agent edits file while user has unsaved changes, shows conflict dialog with Overwrite/Cancel options - Fixed dialog appearing behind unpinned sidebar - increased alert dialog z-index to z-100 ## Related Issues - Closes #251 --------- Co-authored-by: Jess Chadwick <jchadwick@gmail.com>
This commit is contained in:
@@ -94,6 +94,19 @@ export const instanceMessages = {
|
||||
"instanceShell.rightPanel.tabs.files": "Файлы",
|
||||
"instanceShell.rightPanel.tabs.status": "Статус",
|
||||
"instanceShell.rightPanel.tabs.ariaLabel": "Вкладки правой панели",
|
||||
"instanceShell.rightPanel.actions.refresh": "Обновить",
|
||||
"instanceShell.rightPanel.actions.save": "Сохранить (Ctrl+S)",
|
||||
"instanceShell.rightPanel.actions.saveConfirm.message": "Сохранить изменения в \"{path}\" перед переключением?",
|
||||
"instanceShell.rightPanel.actions.saveConfirm.confirmLabel": "Сохранить",
|
||||
"instanceShell.rightPanel.actions.saveConfirm.cancelLabel": "Отменить изменения",
|
||||
"instanceShell.rightPanel.actions.conflict.message": "Файл был изменён агентом. Перезаписать изменения агента?",
|
||||
"instanceShell.rightPanel.actions.conflict.confirmLabel": "Перезаписать",
|
||||
"instanceShell.rightPanel.actions.conflict.cancelLabel": "Отмена",
|
||||
"instanceShell.rightPanel.actions.refreshDirty.message": "Файл имеет несохранённые изменения. Обновление отменит ваши правки. Продолжить?",
|
||||
"instanceShell.rightPanel.actions.refreshDirty.confirmLabel": "Обновить",
|
||||
"instanceShell.rightPanel.actions.refreshDirty.cancelLabel": "Отмена",
|
||||
"instanceShell.rightPanel.toast.saveSuccess": "Файл успешно сохранён",
|
||||
"instanceShell.rightPanel.toast.saveError": "Не удалось сохранить файл",
|
||||
"instanceShell.rightPanel.sections.sessionChanges": "Изменения сессии",
|
||||
"instanceShell.rightPanel.sections.sessionChanges.tooltip": "Файлы, измененные в текущей сессии. Показывает добавления и удаления для каждого файла.",
|
||||
"instanceShell.rightPanel.sections.plan": "План",
|
||||
|
||||
Reference in New Issue
Block a user