diff --git a/src/commands/Article.ts b/src/commands/Article.ts index eea79dba..bf5e0d90 100644 --- a/src/commands/Article.ts +++ b/src/commands/Article.ts @@ -27,6 +27,7 @@ import { CustomPlaceholder, Field } from '../models'; import { format } from 'date-fns'; import { ArticleHelper, + Logger, Settings, SlugHelper, processArticlePlaceholdersFromData, @@ -133,6 +134,7 @@ export class Article { private static async setLastModifiedDateInner( document: TextDocument ): Promise { + Logger.verbose(`Article:setLastModifiedDateInner:Start`); const article = ArticleHelper.getFrontMatterFromDocument(document); // Only set the date, if there is already front matter set @@ -142,9 +144,16 @@ export class Article { const cloneArticle = Object.assign({}, article); const dateField = await ArticleHelper.getModifiedDateField(article); + Logger.verbose(`Article:setLastModifiedDateInner:DateField - ${JSON.stringify(dateField)}`); + try { const fieldName = dateField?.name || DefaultFields.LastModified; - cloneArticle.data[fieldName] = Article.formatDate(new Date(), dateField?.dateFormat); + const fieldValue = Article.formatDate(new Date(), dateField?.dateFormat); + cloneArticle.data[fieldName] = fieldValue; + Logger.verbose( + `Article:setLastModifiedDateInner:DateField name - ${fieldName} - value - ${fieldValue}` + ); + Logger.verbose(`Article:setLastModifiedDateInner:End`); return cloneArticle; } catch (e: unknown) { Notifications.error( diff --git a/src/listeners/dashboard/PagesListener.ts b/src/listeners/dashboard/PagesListener.ts index 56b75a66..26d12e22 100644 --- a/src/listeners/dashboard/PagesListener.ts +++ b/src/listeners/dashboard/PagesListener.ts @@ -71,7 +71,7 @@ export class PagesListener extends BaseListener { // Optimize the list of recently changed files DataListener.getFoldersAndFiles(doc.uri); // Trigger the metadata update - this.watcherExec(doc.uri); + this.watcherExec(doc.uri, 'save'); } }); } @@ -103,9 +103,9 @@ export class PagesListener extends BaseListener { false, false ); - watcher.onDidCreate(async (uri: Uri) => this.watcherExec(uri)); - watcher.onDidChange(async (uri: Uri) => this.watcherExec(uri)); - watcher.onDidDelete(async (uri: Uri) => this.watcherExec(uri)); + watcher.onDidCreate(async (uri: Uri) => this.watcherExec(uri, 'create')); + watcher.onDidChange(async (uri: Uri) => this.watcherExec(uri, 'change')); + watcher.onDidDelete(async (uri: Uri) => this.watcherExec(uri, 'delete')); this.watchers[folderUri.fsPath] = watcher; } } @@ -162,10 +162,10 @@ export class PagesListener extends BaseListener { * Watcher for processing page updates * @param file */ - private static async watcherExec(file: Uri) { + private static async watcherExec(file: Uri, type?: 'create' | 'change' | 'delete' | 'save') { const progressFile = async (file: Uri) => { const ext = Extension.getInstance(); - Logger.info(`File watcher execution for: ${file.fsPath}`); + Logger.info(`File watcher execution for (${type}): ${file.fsPath}`); const pageIdx = this.lastPages.findIndex((p) => p.fmFilePath === file.fsPath); if (pageIdx !== -1) {