From 66143e2e218dc86b9350514aa84c3c74382a6b44 Mon Sep 17 00:00:00 2001 From: Northword Date: Tue, 24 Sep 2024 20:18:45 +0800 Subject: [PATCH] fix(eslint): enable no-restricted-globals and fix ts/no-unused-expressions --- eslint.config.mjs | 8 ++++++++ src/hooks.ts | 2 +- src/modules/examples.ts | 8 ++++---- 3 files changed, 13 insertions(+), 5 deletions(-) diff --git a/eslint.config.mjs b/eslint.config.mjs index 51e0d86..84a7c40 100644 --- a/eslint.config.mjs +++ b/eslint.config.mjs @@ -10,6 +10,14 @@ export default tseslint.config( { extends: [eslint.configs.recommended, ...tseslint.configs.recommended], rules: { + "no-restricted-globals": [ + "error", + "window", + "document", + "ZoteroPane", + "Zotero_Tabs", + ], + "@typescript-eslint/ban-ts-comment": [ "warn", { diff --git a/src/hooks.ts b/src/hooks.ts index 8096163..110e879 100644 --- a/src/hooks.ts +++ b/src/hooks.ts @@ -72,7 +72,7 @@ async function onMainWindowLoad(win: Window): Promise { PromptExampleFactory.registerNormalCommandExample(); - PromptExampleFactory.registerAnonymousCommandExample(); + PromptExampleFactory.registerAnonymousCommandExample(win); PromptExampleFactory.registerConditionalCommandExample(); diff --git a/src/modules/examples.ts b/src/modules/examples.ts index 0333664..654451a 100644 --- a/src/modules/examples.ts +++ b/src/modules/examples.ts @@ -346,7 +346,7 @@ export class PromptExampleFactory { } @example - static registerAnonymousCommandExample() { + static registerAnonymousCommandExample(window: Window) { ztoolkit.Prompt.register([ { id: "search", @@ -411,7 +411,7 @@ export class PromptExampleFactory { str += node; } } - str.length && (str += "."); + if (str.length) str += "."; return str; } function filter(ids: number[]) { @@ -482,7 +482,7 @@ export class PromptExampleFactory { ids.forEach((id: number) => { const item = Zotero.Items.get(id); const title = item.getField("title"); - const ele = ztoolkit.UI.createElement(document, "div", { + const ele = ztoolkit.UI.createElement(window.document, "div", { namespace: "html", classList: ["command"], listeners: [ @@ -795,7 +795,7 @@ export class HelperExampleFactory { addon.data.dialog = dialogHelper; await dialogData.unloadLock.promise; addon.data.dialog = undefined; - addon.data.alive && + if (addon.data.alive) ztoolkit.getGlobal("alert")( `Close dialog with ${dialogData._lastButtonId}.\nCheckbox: ${dialogData.checkboxValue}\nInput: ${dialogData.inputValue}.`, );