From cd731a42313bb2da617807f573eb99cbe481ef68 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Sat, 15 Nov 2025 08:22:15 +0000 Subject: [PATCH] Address Obsidian plugin review feedback for version 1.0.2 Co-authored-by: RaoulJacobs <18635340+RaoulJacobs@users.noreply.github.com> --- manifest.json | 2 +- package.json | 2 +- src/exporter.ts | 4 ++-- src/main.ts | 4 ++-- src/settings.ts | 50 +++++++++++++++++++++++++------------------------ versions.json | 3 ++- 6 files changed, 34 insertions(+), 31 deletions(-) diff --git a/manifest.json b/manifest.json index 1e9bd4e..071d61a 100644 --- a/manifest.json +++ b/manifest.json @@ -1,7 +1,7 @@ { "id": "task-export-to-csv", "name": "Task Export Tool", - "version": "1.0.1", + "version": "1.0.2", "minAppVersion": "1.0.0", "description": "Export outstanding tasks to CSV for time tracking integration (e.g. ManicTime).", "author": "Raoul Jacobs", diff --git a/package.json b/package.json index 96d9c5d..709d39c 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "obsidian-task-export-plugin", - "version": "1.0.1", + "version": "1.0.2", "description": "Export outstanding tasks from Obsidian vault to CSV for ManicTime integration", "main": "main.js", "scripts": { diff --git a/src/exporter.ts b/src/exporter.ts index 4e62e1e..38a2ed2 100644 --- a/src/exporter.ts +++ b/src/exporter.ts @@ -52,7 +52,7 @@ export class TaskExporter { } if (verbose) { - console.log(`Processing: ${customerName} / ${projectName}`); + console.debug(`Processing: ${customerName} / ${projectName}`); } try { @@ -63,7 +63,7 @@ export class TaskExporter { allTasks.push(...tasks); if (verbose) { - console.log(` Found ${tasks.length} task(s)`); + console.debug(` Found ${tasks.length} task(s)`); } } } catch (ex) { diff --git a/src/main.ts b/src/main.ts index 22a80cc..6711957 100644 --- a/src/main.ts +++ b/src/main.ts @@ -81,13 +81,13 @@ export default class TaskExportPlugin extends Plugin { // Update file watcher state this.updateFileWatcher(); - console.log('Task Export Plugin loaded'); + console.debug('Task Export Plugin loaded'); } onunload() { // Disable file watcher this.fileWatcher.disable(); - console.log('Task Export Plugin unloaded'); + console.debug('Task Export Plugin unloaded'); } async loadSettings() { diff --git a/src/settings.ts b/src/settings.ts index 0ab37b5..1129cfe 100644 --- a/src/settings.ts +++ b/src/settings.ts @@ -1,4 +1,4 @@ -import { App, PluginSettingTab, Setting } from 'obsidian'; +import { PluginSettingTab, Setting } from 'obsidian'; import TaskExportPlugin from './main'; /** @@ -7,7 +7,7 @@ import TaskExportPlugin from './main'; export class TaskExportSettingTab extends PluginSettingTab { plugin: TaskExportPlugin; - constructor(app: App, plugin: TaskExportPlugin) { + constructor(app: any, plugin: TaskExportPlugin) { super(app, plugin); this.plugin = plugin; } @@ -17,7 +17,9 @@ export class TaskExportSettingTab extends PluginSettingTab { containerEl.empty(); - containerEl.createEl('h2', { text: 'Task Export Tool Settings' }); + new Setting(containerEl) + .setName('Task Export Tool Settings') + .setHeading(); // Output Path new Setting(containerEl) @@ -26,9 +28,9 @@ export class TaskExportSettingTab extends PluginSettingTab { .addText(text => text .setPlaceholder('outstanding_tasks.csv') .setValue(this.plugin.settings.outputPath) - .onChange(async (value) => { + .onChange((value) => { this.plugin.settings.outputPath = value || 'outstanding_tasks.csv'; - await this.plugin.saveSettings(); + void this.plugin.saveSettings(); })); // Customers Folder @@ -38,9 +40,9 @@ export class TaskExportSettingTab extends PluginSettingTab { .addText(text => text .setPlaceholder('Customers') .setValue(this.plugin.settings.customersFolder) - .onChange(async (value) => { + .onChange((value) => { this.plugin.settings.customersFolder = value || 'Customers'; - await this.plugin.saveSettings(); + void this.plugin.saveSettings(); this.plugin.updateFileWatcher(); })); @@ -50,9 +52,9 @@ export class TaskExportSettingTab extends PluginSettingTab { .setDesc('Automatically export tasks when files change') .addToggle(toggle => toggle .setValue(this.plugin.settings.autoExport) - .onChange(async (value) => { + .onChange((value) => { this.plugin.settings.autoExport = value; - await this.plugin.saveSettings(); + void this.plugin.saveSettings(); this.plugin.updateFileWatcher(); })); @@ -62,9 +64,9 @@ export class TaskExportSettingTab extends PluginSettingTab { .setDesc('Trigger export when files are saved') .addToggle(toggle => toggle .setValue(this.plugin.settings.exportOnSave) - .onChange(async (value) => { + .onChange((value) => { this.plugin.settings.exportOnSave = value; - await this.plugin.saveSettings(); + void this.plugin.saveSettings(); })); // Export on Modify @@ -73,9 +75,9 @@ export class TaskExportSettingTab extends PluginSettingTab { .setDesc('Trigger export when files are modified (more frequent)') .addToggle(toggle => toggle .setValue(this.plugin.settings.exportOnModify) - .onChange(async (value) => { + .onChange((value) => { this.plugin.settings.exportOnModify = value; - await this.plugin.saveSettings(); + void this.plugin.saveSettings(); })); // Show Notifications @@ -84,9 +86,9 @@ export class TaskExportSettingTab extends PluginSettingTab { .setDesc('Display notifications on export completion') .addToggle(toggle => toggle .setValue(this.plugin.settings.showNotifications) - .onChange(async (value) => { + .onChange((value) => { this.plugin.settings.showNotifications = value; - await this.plugin.saveSettings(); + void this.plugin.saveSettings(); })); // Compress Levels @@ -95,9 +97,9 @@ export class TaskExportSettingTab extends PluginSettingTab { .setDesc('Remove empty hierarchy columns from CSV output') .addToggle(toggle => toggle .setValue(this.plugin.settings.compressLevels) - .onChange(async (value) => { + .onChange((value) => { this.plugin.settings.compressLevels = value; - await this.plugin.saveSettings(); + void this.plugin.saveSettings(); })); // Include Header @@ -106,22 +108,22 @@ export class TaskExportSettingTab extends PluginSettingTab { .setDesc('Include CSV header row in output') .addToggle(toggle => toggle .setValue(this.plugin.settings.includeHeader) - .onChange(async (value) => { + .onChange((value) => { this.plugin.settings.includeHeader = value; - await this.plugin.saveSettings(); + void this.plugin.saveSettings(); })); // CSV Delimiter new Setting(containerEl) - .setName('CSV Delimiter') + .setName('CSV delimiter') .setDesc('Choose delimiter for CSV output. Comma is standard, semicolon is common in Europe.') .addDropdown(dropdown => dropdown .addOption(',', 'Comma (,)') .addOption(';', 'Semicolon (;)') .setValue(this.plugin.settings.delimiter) - .onChange(async (value) => { + .onChange((value) => { this.plugin.settings.delimiter = value as ',' | ';'; - await this.plugin.saveSettings(); + void this.plugin.saveSettings(); })); // Debounce Delay @@ -132,9 +134,9 @@ export class TaskExportSettingTab extends PluginSettingTab { .setLimits(1, 30, 1) .setValue(this.plugin.settings.debounceDelay) .setDynamicTooltip() - .onChange(async (value) => { + .onChange((value) => { this.plugin.settings.debounceDelay = value; - await this.plugin.saveSettings(); + void this.plugin.saveSettings(); this.plugin.updateFileWatcher(); })); } diff --git a/versions.json b/versions.json index 2441bd7..e479456 100644 --- a/versions.json +++ b/versions.json @@ -1,4 +1,5 @@ { "1.0.0": "1.0.0", - "1.0.1": "1.0.0" + "1.0.1": "1.0.0", + "1.0.2": "1.0.0" }