summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorsoryu <soryu@soryu.co>2025-12-24 02:04:17 +0000
committersoryu <soryu@soryu.co>2025-12-24 02:04:17 +0000
commitaa62bb8578d48598297e60b253e29a1957c5f51a (patch)
treed2c42fff5683a7ba1eb2cfb1412e56396b0a6ffb
parent22bb11d563f812f58c30b85e51547cba0b6b76dd (diff)
downloadsoryu-aa62bb8578d48598297e60b253e29a1957c5f51a.tar.gz
soryu-aa62bb8578d48598297e60b253e29a1957c5f51a.zip
Revert "Update overwrite mechanism to only require one prompt"
This reverts commit d2bb569401a906e33517cafd0e35d960bd1381bd.
-rw-r--r--makima/frontend/src/routes/files.tsx28
1 files changed, 4 insertions, 24 deletions
diff --git a/makima/frontend/src/routes/files.tsx b/makima/frontend/src/routes/files.tsx
index 2a75218..037df7e 100644
--- a/makima/frontend/src/routes/files.tsx
+++ b/makima/frontend/src/routes/files.tsx
@@ -123,16 +123,6 @@ export default function FilesPage() {
const newBody = [...fileDetail.body];
newBody[index] = element;
- // If there's a pending remote update, fetch latest version first
- let versionToUse = fileDetail.version;
- if (remoteUpdate) {
- const latest = await fetchFile(id);
- if (latest) {
- versionToUse = latest.version;
- }
- setRemoteUpdate(null); // Dismiss notification
- }
-
// Update local state immediately for responsiveness
setFileDetail({
...fileDetail,
@@ -142,14 +132,14 @@ export default function FilesPage() {
// Save to backend with version for optimistic locking
pendingUpdateRef.current = true;
- const result = await editFile(id, { body: newBody, version: versionToUse });
+ const result = await editFile(id, { body: newBody, version: fileDetail.version });
if (result) {
setFileDetail(result);
setHasLocalChanges(false);
}
}
},
- [fileDetail, id, editFile, remoteUpdate, fetchFile]
+ [fileDetail, id, editFile]
);
const handleBodyReorder = useCallback(
@@ -160,16 +150,6 @@ export default function FilesPage() {
const [movedElement] = newBody.splice(fromIndex, 1);
newBody.splice(toIndex, 0, movedElement);
- // If there's a pending remote update, fetch latest version first
- let versionToUse = fileDetail.version;
- if (remoteUpdate) {
- const latest = await fetchFile(id);
- if (latest) {
- versionToUse = latest.version;
- }
- setRemoteUpdate(null); // Dismiss notification
- }
-
// Update local state immediately for responsiveness
setFileDetail({
...fileDetail,
@@ -179,14 +159,14 @@ export default function FilesPage() {
// Save to backend with version for optimistic locking
pendingUpdateRef.current = true;
- const result = await editFile(id, { body: newBody, version: versionToUse });
+ const result = await editFile(id, { body: newBody, version: fileDetail.version });
if (result) {
setFileDetail(result);
setHasLocalChanges(false);
}
}
},
- [fileDetail, id, editFile, remoteUpdate, fetchFile]
+ [fileDetail, id, editFile]
);
const handleCreate = useCallback(async () => {