From 46952218de42ab23a4a3338dfa2cb72af6d0ba59 Mon Sep 17 00:00:00 2001 From: ltctceplrm <14954927+ltctceplrm@users.noreply.github.com> Date: Wed, 5 Mar 2025 22:33:30 +0100 Subject: [PATCH] Changed overwrite confirmation to only appear on new notes Overwrite confirmation should only appear if a new note is created, not when updating the metadata for an existing note. --- src/main.ts | 17 +++++++++-------- src/utils/Utils.ts | 1 + 2 files changed, 10 insertions(+), 8 deletions(-) diff --git a/src/main.ts b/src/main.ts index 1846627..4803c09 100644 --- a/src/main.ts +++ b/src/main.ts @@ -512,14 +512,15 @@ export default class MediaDbPlugin extends Plugin { // look if file already exists and ask if it should be overwritten const file = this.app.vault.getAbstractFileByPath(filePath); if (file) { - const shouldOverwrite = await new Promise(resolve => { - new ConfirmOverwriteModal(this.app, fileName, resolve).open(); - }); + if (!options.isUpdating) { + const shouldOverwrite = await new Promise(resolve => { + new ConfirmOverwriteModal(this.app, fileName, resolve).open(); + }); - if (!shouldOverwrite) { - throw new Error('MDB | file creation cancelled by user'); + if (!shouldOverwrite) { + throw new Error('MDB | file creation cancelled by user'); + } } - await this.app.vault.delete(file); } @@ -574,9 +575,9 @@ export default class MediaDbPlugin extends Plugin { console.debug(`MDB | newMediaTypeModel after merge`, newMediaTypeModel); if (onlyMetadata) { - await this.createMediaDbNoteFromModel(newMediaTypeModel, { attachFile: activeFile, folder: activeFile.parent ?? undefined, openNote: true }); + await this.createMediaDbNoteFromModel(newMediaTypeModel, { attachFile: activeFile, folder: activeFile.parent ?? undefined, openNote: true, isUpdating: true }); } else { - await this.createMediaDbNoteFromModel(newMediaTypeModel, { attachTemplate: true, folder: activeFile.parent ?? undefined, openNote: true }); + await this.createMediaDbNoteFromModel(newMediaTypeModel, { attachTemplate: true, folder: activeFile.parent ?? undefined, openNote: true, isUpdating: true }); } } diff --git a/src/utils/Utils.ts b/src/utils/Utils.ts index 7950b15..4e8b82f 100644 --- a/src/utils/Utils.ts +++ b/src/utils/Utils.ts @@ -193,6 +193,7 @@ export interface CreateNoteOptions { attachFile?: TFile; openNote?: boolean; folder?: TFolder; + isUpdating?: boolean; // New property } export function migrateObject(object: T, oldData: any, defaultData: T): void {