fix: removed unnecessary override confirmation when user save project with project name unchanged
This commit is contained in:
+6
-25
@@ -1,4 +1,4 @@
|
|||||||
import { KGProjectStorage, DuplicateEntryError } from '../core/io/KGProjectStorage';
|
import { KGProjectStorage } from '../core/io/KGProjectStorage';
|
||||||
import { KGCore } from '../core/KGCore';
|
import { KGCore } from '../core/KGCore';
|
||||||
import { RESERVED_PROJECT_NAME } from './projectNameUtil';
|
import { RESERVED_PROJECT_NAME } from './projectNameUtil';
|
||||||
|
|
||||||
@@ -64,34 +64,15 @@ export const saveProject = async (
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Same name — existing overwrite logic
|
// Same name — overwrite silently (user hasn't changed the name, so no confirmation needed)
|
||||||
try {
|
try {
|
||||||
await storage.save(projectName, KGCore.instance().getCurrentProject(), false);
|
await storage.save(projectName, KGCore.instance().getCurrentProject(), true);
|
||||||
setStatus(`Project "${projectName}" has been saved`);
|
setStatus(`Project "${projectName}" has been saved`);
|
||||||
onSaveSuccess(projectName);
|
onSaveSuccess(projectName);
|
||||||
return true;
|
return true;
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
if (error instanceof DuplicateEntryError) {
|
console.error('Error saving project:', error);
|
||||||
const confirmed = window.confirm(
|
window.alert(`An error occurred while saving: ${error}`);
|
||||||
`Project "${projectName}" already exists. Do you want to overwrite it?`,
|
return false;
|
||||||
);
|
|
||||||
if (confirmed) {
|
|
||||||
try {
|
|
||||||
await storage.save(projectName, KGCore.instance().getCurrentProject(), true);
|
|
||||||
setStatus(`Project "${projectName}" has been saved`);
|
|
||||||
onSaveSuccess(projectName);
|
|
||||||
return true;
|
|
||||||
} catch (overwriteError) {
|
|
||||||
console.error('Error overwriting project:', overwriteError);
|
|
||||||
window.alert(`An error occurred while overwriting the project: ${overwriteError}`);
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return false;
|
|
||||||
} else {
|
|
||||||
console.error('Error saving project:', error);
|
|
||||||
window.alert(`An unknown error ${error} occurred. Please try again.`);
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|||||||
Reference in New Issue
Block a user