diff --git a/src/main.ts b/src/main.ts index 3478284..93c077e 100644 --- a/src/main.ts +++ b/src/main.ts @@ -106,7 +106,7 @@ export default class OmnivorePlugin extends Plugin { async onload() { await this.loadSettings(); - + await this.resetSyncingStateSetting(); this.addCommand({ id: "sync", name: "Sync", @@ -178,7 +178,10 @@ export default class OmnivorePlugin extends Plugin { folder, } = this.settings; - if (syncing) return; + if (syncing) { + new Notice("🐢 Already syncing ..."); + return; + } if (!apiKey) { new Notice("Missing Omnivore api key"); @@ -380,6 +383,11 @@ export default class OmnivorePlugin extends Plugin { return ""; } } + + private async resetSyncingStateSetting() { + this.settings.syncing = false; + await this.saveSettings(); + } } class OmnivoreSettingTab extends PluginSettingTab { diff --git a/src/util.ts b/src/util.ts index 54f950a..2262a30 100644 --- a/src/util.ts +++ b/src/util.ts @@ -111,12 +111,12 @@ export const loadArticle = async ( export const loadArticles = async ( endpoint: string, apiKey: string, - after = 0, - first = 10, - updatedAt = "", - query = "", - includeContent = false, - format = "html" + after: number = 0, + first: number = 10, + updatedAt: string = "", + query: string = "", + includeContent: boolean = false, + format: string = "html" ): Promise<[Article[], boolean]> => { const res = await requestUrl({ url: endpoint,