From 7b8377584f44eecb4c25557f625f4c86c54920ee Mon Sep 17 00:00:00 2001 From: Unarray <48868686+Unarray@users.noreply.github.com> Date: Sun, 27 Aug 2023 11:04:17 +0200 Subject: [PATCH] Use this new API documention - Removing all ts-ignore in relation with this API doc - Use this new API doc --- src/FileTreeGenerator.ts | 8 ++++---- src/modals/generate-tree/GenerateTree.ts | 6 ------ src/ribbon-icons/generate-tree/GenerateTree.ts | 16 ++++++++++------ 3 files changed, 14 insertions(+), 16 deletions(-) diff --git a/src/FileTreeGenerator.ts b/src/FileTreeGenerator.ts index 9da37c8..577adf9 100644 --- a/src/FileTreeGenerator.ts +++ b/src/FileTreeGenerator.ts @@ -1,6 +1,6 @@ import { SettingsTab } from "./SettingsTab"; import { GenerateTree as GenerateTreeCommand } from "#/commands/generate-tree"; -import type { App, Command, Editor, PluginManifest } from "obsidian"; +import type { App, Command, MarkdownFileInfo, PluginManifest } from "obsidian"; import { Plugin } from "obsidian"; import type { RibbonIcon } from "#/ribbon-icons"; import { GenerateTree as GenerateTreeIcon } from "#/ribbon-icons/generate-tree"; @@ -47,10 +47,10 @@ export default class FileTreeGenerator extends Plugin { return this.addRibbonIcon(ribbonIcon.icon, ribbonIcon.title, ribbonIcon.execute); }; - public getEditor = (): Editor | null => { - const editor = this.app.workspace.activeEditor?.editor; + public getActiveEditor = (): MarkdownFileInfo | null => { + const activeEditor = this.app.workspace.activeEditor; - return editor ? editor : null; + return activeEditor ? activeEditor : null; }; } \ No newline at end of file diff --git a/src/modals/generate-tree/GenerateTree.ts b/src/modals/generate-tree/GenerateTree.ts index 100928e..e1fb98e 100644 --- a/src/modals/generate-tree/GenerateTree.ts +++ b/src/modals/generate-tree/GenerateTree.ts @@ -48,13 +48,7 @@ export class GenerateTree extends Modal { (button) => button .setTooltip("Open plugin settings") .onClick(() => { - // eslint-disable-next-line @typescript-eslint/ban-ts-comment - // @ts-ignore - // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access, @typescript-eslint/no-unsafe-call this.app.setting.open(); - // eslint-disable-next-line @typescript-eslint/ban-ts-comment - // @ts-ignore - // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access, @typescript-eslint/no-unsafe-call this.app.setting.openTabById("file-tree-generator"); }) ) diff --git a/src/ribbon-icons/generate-tree/GenerateTree.ts b/src/ribbon-icons/generate-tree/GenerateTree.ts index 397dd20..c837521 100644 --- a/src/ribbon-icons/generate-tree/GenerateTree.ts +++ b/src/ribbon-icons/generate-tree/GenerateTree.ts @@ -10,23 +10,27 @@ export class GenerateTree implements RibbonIcon { public readonly title: RibbonIconTitle = "Generate file tree"; public execute = (): void => { - const editor = FileTreeGenerator.getInstance().getEditor(); + const activeEditor = FileTreeGenerator.getInstance().getActiveEditor(); - if (!editor) { + if (!activeEditor) { new Notice("❌ Can only be used during editing"); return; } - // eslint-disable-next-line @typescript-eslint/ban-ts-comment - // @ts-ignore - // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access, @typescript-eslint/no-unsafe-call - const viewType = FileTreeGenerator.getInstance().app.workspace.activeEditor.currentMode.type as string; + const viewType = activeEditor.currentMode.type; if (viewType !== "source") { new Notice("❌ Can only be used during editing"); return; } + const editor = activeEditor.editor; + + if (!editor) { + new Notice("❌ Can only be used during editing"); + return; + } + new GenerateTreeModal(FileTreeGenerator.getInstance().app, editor).open(); };