From 237c41cce7187a77c24671a87002bb91b9de57ef Mon Sep 17 00:00:00 2001 From: Ole Eskild Steensen Date: Fri, 10 Feb 2023 14:47:06 +0100 Subject: [PATCH] Better user feedback when publishing multiple notes --- main.ts | 11 +++++++++-- src/PublishStatusBar.ts | 4 ++-- 2 files changed, 11 insertions(+), 4 deletions(-) diff --git a/main.ts b/main.ts index a582b778..4d82725a 100644 --- a/main.ts +++ b/main.ts @@ -113,6 +113,8 @@ export default class DigitalGarden extends Plugin { callback: async () => { const statusBarItem = this.addStatusBarItem(); try { + + new Notice('Processing files to publish...'); const { vault, metadataCache } = this.app; const publisher = new Publisher(vault, metadataCache, this.settings); const siteManager = new DigitalGardenSiteManager(metadataCache, this.settings); @@ -122,10 +124,12 @@ export default class DigitalGarden extends Plugin { const filesToPublish = publishStatus.changedNotes.concat(publishStatus.unpublishedNotes); const filesToDelete = publishStatus.deletedNotePaths; const imagesToDelete = publishStatus.deletedImagePaths; - const statusBar = new PublishStatusBar(statusBarItem, filesToPublish.length + filesToDelete.length); + const statusBar = new PublishStatusBar(statusBarItem, filesToPublish.length + filesToDelete.length + imagesToDelete.length); let errorFiles = 0; let errorDeleteFiles = 0; + let errorDeleteImage = 0; + new Notice(`Publishing ${filesToPublish.length} notes, deleting ${filesToDelete.length} notes and ${imagesToDelete.length} images. See the status bar in lower right corner for progress.`, 8000); for (const file of filesToPublish) { try { statusBar.increment(); @@ -150,7 +154,7 @@ export default class DigitalGarden extends Plugin { statusBar.increment(); await publisher.deleteImage(filePath); } catch { - errorDeleteFiles++; + errorDeleteImage++; new Notice(`Unable to delete image ${filePath}, skipping it.`) } } @@ -160,6 +164,9 @@ export default class DigitalGarden extends Plugin { if (filesToDelete.length > 0) { new Notice(`Successfully deleted ${filesToDelete.length - errorDeleteFiles} notes from your garden.`); } + if(imagesToDelete.length > 0) { + new Notice(`Successfully deleted ${imagesToDelete.length - errorDeleteImage} images from your garden.`); + } } catch (e) { statusBarItem.remove(); diff --git a/src/PublishStatusBar.ts b/src/PublishStatusBar.ts index 907a4ad8..7743f079 100644 --- a/src/PublishStatusBar.ts +++ b/src/PublishStatusBar.ts @@ -16,11 +16,11 @@ export class PublishStatusBar { increment() { - this.status.innerText = `⌛Publishing Notes: ${++this.counter}/${this.numberOfNotesToPublish}`; + this.status.innerText = `⌛Publishing files: ${++this.counter}/${this.numberOfNotesToPublish}`; } finish(displayDurationMillisec: number) { - this.status.innerText = `✅ Published Notes: ${this.counter}/${this.numberOfNotesToPublish}`; + this.status.innerText = `✅ Published files: ${this.counter}/${this.numberOfNotesToPublish}`; setTimeout(() => { this.statusBarItem.remove(); }, displayDurationMillisec);