diff --git a/cli/src/version/render.test.ts b/cli/src/version/render.test.ts index 4672bc4c7e1..e6761318aaa 100644 --- a/cli/src/version/render.test.ts +++ b/cli/src/version/render.test.ts @@ -24,7 +24,6 @@ function compatible(): VersionReport['compat'] { } // Regex matching the ANSI CSI introducer (ESC `[`). -// eslint-disable-next-line no-control-regex const ANSI_RE = /\[/ describe('renderVersionText', () => { diff --git a/cli/test/e2e/helpers/assert.ts b/cli/test/e2e/helpers/assert.ts index 529491bfabd..21a52926786 100644 --- a/cli/test/e2e/helpers/assert.ts +++ b/cli/test/e2e/helpers/assert.ts @@ -10,7 +10,6 @@ import { expect } from 'vite-plus/test' import './vitest-context.js' // ── ANSI ────────────────────────────────────────────────────────────────── -// eslint-disable-next-line no-control-regex const ANSI_RE = /\x1B\[[0-9;]*[mGKHFA-DJsuhl]/g function redact(text: string): string { diff --git a/cli/test/e2e/suites/output/table-output.e2e.ts b/cli/test/e2e/suites/output/table-output.e2e.ts index 410e1eee17d..72c6fd1ae77 100644 --- a/cli/test/e2e/suites/output/table-output.e2e.ts +++ b/cli/test/e2e/suites/output/table-output.e2e.ts @@ -146,7 +146,6 @@ describe('E2E / table output — header and column format (spec 5.1–5.19)', () const result = await fx.r(['get', 'app']) assertExitCode(result, 0) // No NUL, BEL, BS, VT, FF, SO–US, DEL bytes that would corrupt a pipe - // eslint-disable-next-line no-control-regex expect(result.stdout).not.toMatch(/[\x00-\x08\v\f\x0E-\x1F\x7F]/) }) @@ -155,7 +154,6 @@ describe('E2E / table output — header and column format (spec 5.1–5.19)', () const result = await fx.r(['get', 'app']) assertExitCode(result, 0) assertNoAnsi(result.stdout, 'stdout') - // eslint-disable-next-line no-control-regex expect(result.stdout).not.toMatch(/[\x00-\x08\v\f\x0E-\x1F\x7F]/) }) diff --git a/lint.config.ts b/lint.config.ts index 27152cd6477..a8aa394ac57 100644 --- a/lint.config.ts +++ b/lint.config.ts @@ -205,7 +205,7 @@ export const lintConfig = { 'eslint-plugin-storybook', ], options: { - reportUnusedDisableDirectives: 'warn', + reportUnusedDisableDirectives: 'error', respectEslintDisableDirectives: false, typeAware: true, typeCheck: true, @@ -458,6 +458,9 @@ export const lintConfig = { ], 'vars-on-top': 'error', yoda: ['error', 'never'], + 'unicorn/no-abusive-eslint-disable': 'error', + 'dify/no-file-wide-disable': 'error', + 'dify/require-disable-directive-description': 'error', 'eslint-comments/no-aggregating-enable': 'error', 'eslint-comments/no-duplicate-disable': 'error', 'eslint-comments/no-unlimited-disable': 'error', diff --git a/oxlint-suppressions.json b/oxlint-suppressions.json index 1c8817fa341..7916faa27cd 100644 --- a/oxlint-suppressions.json +++ b/oxlint-suppressions.json @@ -1,4 +1,9 @@ { + "cli/src/framework/run.test.ts": { + "dify/require-disable-directive-description": { + "count": 1 + } + }, "cli/test/e2e/suites/output/json-yaml-output.e2e.ts": { "prefer-const": { "count": 1 @@ -40,6 +45,9 @@ } }, "web/__mocks__/zustand.ts": { + "dify/require-disable-directive-description": { + "count": 1 + }, "no-barrel-files/no-barrel-files": { "count": 1 } @@ -102,6 +110,11 @@ "count": 2 } }, + "web/app/components/app/annotation/__tests__/index.spec.tsx": { + "typescript/no-explicit-any": { + "count": 7 + } + }, "web/app/components/app/annotation/add-annotation-modal/edit-item/index.tsx": { "erasable-syntax-only/enums": { "count": 1 @@ -119,6 +132,11 @@ "count": 1 } }, + "web/app/components/app/annotation/batch-add-annotation-modal/__tests__/csv-downloader.spec.tsx": { + "typescript/no-explicit-any": { + "count": 2 + } + }, "web/app/components/app/annotation/batch-add-annotation-modal/csv-downloader.tsx": { "eslint-react/static-components": { "count": 2 @@ -166,6 +184,11 @@ "count": 1 } }, + "web/app/components/app/annotation/header-opts/__tests__/index.spec.tsx": { + "typescript/no-explicit-any": { + "count": 1 + } + }, "web/app/components/app/annotation/header-opts/index.tsx": { "typescript/no-explicit-any": { "count": 1 @@ -195,12 +218,45 @@ "count": 1 } }, + "web/app/components/app/app-publisher/__tests__/features-wrapper.spec.tsx": { + "typescript/no-explicit-any": { + "count": 6 + } + }, + "web/app/components/app/app-publisher/__tests__/index.spec.tsx": { + "typescript/no-explicit-any": { + "count": 9 + } + }, + "web/app/components/app/app-publisher/__tests__/sections.spec.tsx": { + "typescript/no-explicit-any": { + "count": 2 + } + }, + "web/app/components/app/app-publisher/__tests__/version-info-modal.spec.tsx": { + "typescript/no-explicit-any": { + "count": 3 + } + }, + "web/app/components/app/configuration/config-prompt/__tests__/advanced-prompt-input.spec.tsx": { + "typescript/no-explicit-any": { + "count": 1 + } + }, "web/app/components/app/configuration/config-prompt/__tests__/index.spec.tsx": { "jsx-a11y/click-events-have-key-events": { "count": 1 }, "jsx-a11y/no-static-element-interactions": { "count": 1 + }, + "typescript/no-explicit-any": { + "count": 1 + } + }, + "web/app/components/app/configuration/config-prompt/__tests__/simple-prompt-input.spec.tsx": { + "typescript/no-explicit-any": { + "count": 1 } }, "web/app/components/app/configuration/config-prompt/advanced-prompt-input.tsx": { @@ -234,6 +290,19 @@ "web/app/components/app/configuration/config-var/config-modal/__tests__/form-fields.spec.tsx": { "no-unused-vars": { "count": 1 + }, + "typescript/no-explicit-any": { + "count": 1 + } + }, + "web/app/components/app/configuration/config-var/config-modal/__tests__/index-logic.spec.tsx": { + "typescript/no-explicit-any": { + "count": 3 + } + }, + "web/app/components/app/configuration/config-var/config-modal/__tests__/type-select.spec.tsx": { + "typescript/no-explicit-any": { + "count": 2 } }, "web/app/components/app/configuration/config-var/config-modal/form-fields.tsx": { @@ -262,6 +331,11 @@ "count": 1 } }, + "web/app/components/app/configuration/config-var/index.tsx": { + "dify/require-disable-directive-description": { + "count": 1 + } + }, "web/app/components/app/configuration/config-var/select-var-type.tsx": { "typescript/no-explicit-any": { "count": 1 @@ -272,6 +346,41 @@ "count": 1 } }, + "web/app/components/app/configuration/config-vision/__tests__/index.spec.tsx": { + "typescript/no-explicit-any": { + "count": 1 + } + }, + "web/app/components/app/configuration/config/__tests__/agent-setting-button.spec.tsx": { + "typescript/no-explicit-any": { + "count": 2 + } + }, + "web/app/components/app/configuration/config/__tests__/config-audio.spec.tsx": { + "typescript/no-explicit-any": { + "count": 1 + } + }, + "web/app/components/app/configuration/config/__tests__/config-document.spec.tsx": { + "typescript/no-explicit-any": { + "count": 1 + } + }, + "web/app/components/app/configuration/config/__tests__/index.spec.tsx": { + "typescript/no-explicit-any": { + "count": 6 + } + }, + "web/app/components/app/configuration/config/agent/agent-tools/__tests__/index.spec.tsx": { + "typescript/no-explicit-any": { + "count": 3 + } + }, + "web/app/components/app/configuration/config/agent/agent-tools/__tests__/setting-built-in-tool.spec.tsx": { + "typescript/no-explicit-any": { + "count": 5 + } + }, "web/app/components/app/configuration/config/agent/agent-tools/index.tsx": { "jsx-a11y/mouse-events-have-key-events": { "count": 2 @@ -281,6 +390,9 @@ } }, "web/app/components/app/configuration/config/agent/agent-tools/setting-built-in-tool.tsx": { + "dify/require-disable-directive-description": { + "count": 1 + }, "eslint-react/set-state-in-effect": { "count": 1 }, @@ -316,6 +428,11 @@ "count": 1 } }, + "web/app/components/app/configuration/dataset-config/__tests__/index.spec.tsx": { + "typescript/no-explicit-any": { + "count": 36 + } + }, "web/app/components/app/configuration/dataset-config/context-var/var-picker.tsx": { "jsx-a11y/click-events-have-key-events": { "count": 1 @@ -337,6 +454,11 @@ "count": 1 } }, + "web/app/components/app/configuration/dataset-config/select-dataset/__tests__/index.spec.tsx": { + "typescript/no-explicit-any": { + "count": 2 + } + }, "web/app/components/app/configuration/dataset-config/settings-modal/index.tsx": { "eslint-react/set-state-in-effect": { "count": 2 @@ -351,6 +473,16 @@ "count": 1 } }, + "web/app/components/app/configuration/debug/__tests__/hooks.spec.tsx": { + "typescript/no-explicit-any": { + "count": 1 + } + }, + "web/app/components/app/configuration/debug/debug-with-multiple-model/__tests__/index.spec.tsx": { + "typescript/no-explicit-any": { + "count": 5 + } + }, "web/app/components/app/configuration/debug/debug-with-multiple-model/chat-item.tsx": { "typescript/no-explicit-any": { "count": 6 @@ -366,6 +498,11 @@ "count": 8 } }, + "web/app/components/app/configuration/debug/debug-with-single-model/__tests__/index.spec.tsx": { + "typescript/no-explicit-any": { + "count": 3 + } + }, "web/app/components/app/configuration/debug/debug-with-single-model/index.tsx": { "typescript/no-explicit-any": { "count": 5 @@ -389,6 +526,31 @@ "count": 1 } }, + "web/app/components/app/configuration/hooks/__tests__/use-advanced-prompt-config.spec.tsx": { + "typescript/no-explicit-any": { + "count": 4 + } + }, + "web/app/components/app/configuration/hooks/__tests__/use-configuration-utils.spec.ts": { + "typescript/no-explicit-any": { + "count": 52 + } + }, + "web/app/components/app/configuration/hooks/__tests__/use-configuration.spec.tsx": { + "typescript/no-explicit-any": { + "count": 3 + } + }, + "web/app/components/app/configuration/prompt-value-panel/__tests__/index.spec.tsx": { + "typescript/no-explicit-any": { + "count": 2 + } + }, + "web/app/components/app/create-app-dialog/app-card/__tests__/index.spec.tsx": { + "dify/require-disable-directive-description": { + "count": 1 + } + }, "web/app/components/app/create-app-dialog/app-list/sidebar.tsx": { "erasable-syntax-only/enums": { "count": 1 @@ -397,6 +559,11 @@ "count": 1 } }, + "web/app/components/app/create-from-dsl-modal/__tests__/index.spec.tsx": { + "typescript/no-explicit-any": { + "count": 2 + } + }, "web/app/components/app/deploy/shared/deployment-configuration/use-deployment-configuration-queries.ts": { "@tanstack/query/prefer-query-options": { "count": 2 @@ -407,6 +574,21 @@ "count": 1 } }, + "web/app/components/app/log/__tests__/index.spec.tsx": { + "typescript/no-explicit-any": { + "count": 5 + } + }, + "web/app/components/app/log/__tests__/list-utils.spec.ts": { + "typescript/no-explicit-any": { + "count": 2 + } + }, + "web/app/components/app/log/__tests__/list.spec.tsx": { + "typescript/no-explicit-any": { + "count": 11 + } + }, "web/app/components/app/log/filter.tsx": { "react/only-export-components": { "count": 1 @@ -433,6 +615,11 @@ "count": 2 } }, + "web/app/components/app/overview/__tests__/app-chart-utils.spec.ts": { + "typescript/no-explicit-any": { + "count": 2 + } + }, "web/app/components/app/overview/apikey-info-panel/index.tsx": { "jsx-a11y/click-events-have-key-events": { "count": 1 @@ -441,7 +628,35 @@ "count": 1 } }, + "web/app/components/app/overview/app-chart.tsx": { + "react/only-export-components": { + "count": 12 + } + }, + "web/app/components/app/text-generate/item/__tests__/index.spec.tsx": { + "typescript/no-explicit-any": { + "count": 2 + } + }, + "web/app/components/app/text-generate/item/__tests__/result-tab.spec.tsx": { + "typescript/no-explicit-any": { + "count": 1 + } + }, + "web/app/components/app/text-generate/item/__tests__/utils.spec.ts": { + "typescript/no-explicit-any": { + "count": 4 + } + }, + "web/app/components/app/text-generate/item/__tests__/workflow-body.spec.tsx": { + "typescript/no-explicit-any": { + "count": 3 + } + }, "web/app/components/app/text-generate/item/index.tsx": { + "dify/require-disable-directive-description": { + "count": 4 + }, "typescript/no-explicit-any": { "count": 3 } @@ -464,6 +679,11 @@ "count": 2 } }, + "web/app/components/app/workflow-log/__tests__/list.spec.tsx": { + "typescript/no-explicit-any": { + "count": 1 + } + }, "web/app/components/app/workflow-log/filter.tsx": { "react/only-export-components": { "count": 1 @@ -518,7 +738,20 @@ "count": 1 } }, + "web/app/components/base/audio-btn/audio.player.manager.ts": { + "dify/require-disable-directive-description": { + "count": 1 + } + }, + "web/app/components/base/audio-btn/audio.ts": { + "dify/require-disable-directive-description": { + "count": 1 + } + }, "web/app/components/base/audio-gallery/AudioPlayer.tsx": { + "dify/require-disable-directive-description": { + "count": 1 + }, "jsx-a11y/media-has-caption": { "count": 1 }, @@ -526,6 +759,11 @@ "count": 2 } }, + "web/app/components/base/audio-gallery/__tests__/AudioPlayer.spec.tsx": { + "dify/require-disable-directive-description": { + "count": 1 + } + }, "web/app/components/base/auto-height-textarea/index.stories.tsx": { "no-console": { "count": 2 @@ -535,6 +773,9 @@ } }, "web/app/components/base/auto-height-textarea/index.tsx": { + "dify/require-disable-directive-description": { + "count": 1 + }, "jsx-a11y/no-autofocus": { "count": 1 } @@ -545,6 +786,9 @@ } }, "web/app/components/base/carousel/index.tsx": { + "eslint-react/set-state-in-effect": { + "count": 3 + }, "react/only-export-components": { "count": 1 } @@ -616,12 +860,20 @@ "count": 1 } }, + "web/app/components/base/chat/chat/chat-input-area/index.tsx": { + "dify/require-disable-directive-description": { + "count": 1 + } + }, "web/app/components/base/chat/chat/check-input-forms-hooks.ts": { "typescript/no-explicit-any": { "count": 1 } }, "web/app/components/base/chat/chat/citation/index.tsx": { + "dify/require-disable-directive-description": { + "count": 1 + }, "eslint-react/set-state-in-effect": { "count": 1 } @@ -671,8 +923,24 @@ } }, "web/app/components/base/chat/embedded-chatbot/hooks.tsx": { + "dify/require-disable-directive-description": { + "count": 3 + }, "eslint-react/set-state-in-effect": { "count": 3 + }, + "typescript/no-explicit-any": { + "count": 14 + } + }, + "web/app/components/base/chat/embedded-chatbot/inputs-form/__tests__/content.spec.tsx": { + "typescript/no-explicit-any": { + "count": 5 + } + }, + "web/app/components/base/chat/embedded-chatbot/inputs-form/__tests__/index.spec.tsx": { + "typescript/no-explicit-any": { + "count": 6 } }, "web/app/components/base/chat/embedded-chatbot/inputs-form/content.tsx": { @@ -765,6 +1033,9 @@ } }, "web/app/components/base/features/new-feature-panel/conversation-opener/modal.tsx": { + "dify/require-disable-directive-description": { + "count": 1 + }, "jsx-a11y/click-events-have-key-events": { "count": 2 }, @@ -1303,6 +1574,9 @@ } }, "web/app/components/base/markdown/error-boundary.tsx": { + "dify/require-disable-directive-description": { + "count": 2 + }, "typescript/no-explicit-any": { "count": 3 } @@ -1340,6 +1614,11 @@ "count": 4 } }, + "web/app/components/base/message-log-modal/__tests__/index.spec.tsx": { + "dify/require-disable-directive-description": { + "count": 1 + } + }, "web/app/components/base/message-log-modal/index.stories.tsx": { "no-console": { "count": 1 @@ -1568,6 +1847,11 @@ "count": 1 } }, + "web/app/components/base/search-input/__tests__/index.spec.tsx": { + "dify/require-disable-directive-description": { + "count": 1 + } + }, "web/app/components/base/search-input/index.stories.tsx": { "jsx-a11y/label-has-associated-control": { "count": 3 @@ -1576,6 +1860,11 @@ "count": 3 } }, + "web/app/components/base/search-input/index.tsx": { + "dify/require-disable-directive-description": { + "count": 1 + } + }, "web/app/components/base/svg-gallery/index.tsx": { "node-js/prefer-global/buffer": { "count": 1 @@ -1638,6 +1927,11 @@ "count": 1 } }, + "web/app/components/base/zendesk/runtime.ts": { + "dify/require-disable-directive-description": { + "count": 1 + } + }, "web/app/components/billing/plan/assets/index.tsx": { "no-barrel-files/no-barrel-files": { "count": 3 @@ -1770,6 +2064,11 @@ "count": 1 } }, + "web/app/components/datasets/create/step-two/__tests__/index.spec.tsx": { + "dify/require-disable-directive-description": { + "count": 3 + } + }, "web/app/components/datasets/create/step-two/components/index.ts": { "no-barrel-files/no-barrel-files": { "count": 5 @@ -1801,6 +2100,11 @@ "count": 3 } }, + "web/app/components/datasets/create/step-two/index.tsx": { + "dify/require-disable-directive-description": { + "count": 2 + } + }, "web/app/components/datasets/create/website/base/crawled-result-item.tsx": { "jsx-a11y/label-has-associated-control": { "count": 1 @@ -2228,6 +2532,9 @@ } }, "web/app/components/explore/try-app/app/text-generation.tsx": { + "dify/require-disable-directive-description": { + "count": 1 + }, "jsx-a11y/click-events-have-key-events": { "count": 1 }, @@ -2235,6 +2542,11 @@ "count": 1 } }, + "web/app/components/explore/try-app/preview/basic-app-preview.tsx": { + "typescript/no-explicit-any": { + "count": 2 + } + }, "web/app/components/goto-anything/actions/commands/command-bus.ts": { "typescript/no-explicit-any": { "count": 2 @@ -2471,6 +2783,11 @@ "count": 3 } }, + "web/app/components/plugins/install-plugin/install-bundle/steps/hooks/use-install-multi-state.ts": { + "dify/require-disable-directive-description": { + "count": 1 + } + }, "web/app/components/plugins/install-plugin/install-from-github/index.tsx": { "typescript/no-explicit-any": { "count": 2 @@ -2499,11 +2816,21 @@ "count": 1 } }, + "web/app/components/plugins/marketplace/list/carousel.tsx": { + "eslint-react/set-state-in-effect": { + "count": 4 + } + }, "web/app/components/plugins/marketplace/query.ts": { "@tanstack/query/prefer-query-options": { "count": 1 } }, + "web/app/components/plugins/marketplace/search-box/index.tsx": { + "dify/require-disable-directive-description": { + "count": 1 + } + }, "web/app/components/plugins/plugin-auth/authorized/index.tsx": { "no-restricted-imports": { "count": 1 @@ -2919,6 +3246,9 @@ } }, "web/app/components/share/text-generation/run-once/index.tsx": { + "dify/require-disable-directive-description": { + "count": 1 + }, "eslint-react/set-state-in-effect": { "count": 1 }, @@ -2955,6 +3285,11 @@ "count": 5 } }, + "web/app/components/snippets/hooks/use-nodes-sync-draft.ts": { + "dify/require-disable-directive-description": { + "count": 1 + } + }, "web/app/components/snippets/hooks/use-snippet-run.ts": { "no-restricted-imports": { "count": 2 @@ -3060,6 +3395,11 @@ "count": 3 } }, + "web/app/components/workflow/block-selector/tool-picker.tsx": { + "dify/require-disable-directive-description": { + "count": 1 + } + }, "web/app/components/workflow/block-selector/use-sticky-scroll.ts": { "erasable-syntax-only/enums": { "count": 1 @@ -3104,7 +3444,18 @@ "count": 1 } }, + "web/app/components/workflow/header/test-run-menu-helpers.tsx": { + "dify/require-disable-directive-description": { + "count": 1 + }, + "react/only-export-components": { + "count": 2 + } + }, "web/app/components/workflow/header/test-run-menu.tsx": { + "dify/require-disable-directive-description": { + "count": 1 + }, "erasable-syntax-only/enums": { "count": 1 }, @@ -3191,6 +3542,11 @@ "count": 1 } }, + "web/app/components/workflow/node-actions-menu/__tests__/details.spec.tsx": { + "typescript/no-explicit-any": { + "count": 8 + } + }, "web/app/components/workflow/nodes/_base/components/add-variable-popup-with-position.tsx": { "typescript/no-explicit-any": { "count": 2 @@ -3487,6 +3843,9 @@ } }, "web/app/components/workflow/nodes/_base/hooks/use-one-step-run.ts": { + "dify/require-disable-directive-description": { + "count": 1 + }, "eslint-react/set-state-in-effect": { "count": 2 }, @@ -3525,6 +3884,11 @@ "count": 6 } }, + "web/app/components/workflow/nodes/agent/__tests__/integration.spec.tsx": { + "typescript/no-explicit-any": { + "count": 20 + } + }, "web/app/components/workflow/nodes/agent/default.ts": { "typescript/no-explicit-any": { "count": 3 @@ -3556,6 +3920,11 @@ "count": 7 } }, + "web/app/components/workflow/nodes/assigner/__tests__/integration.spec.tsx": { + "typescript/no-explicit-any": { + "count": 15 + } + }, "web/app/components/workflow/nodes/assigner/components/var-list/index.tsx": { "no-restricted-imports": { "count": 1 @@ -3742,6 +4111,11 @@ "count": 1 } }, + "web/app/components/workflow/nodes/human-input/components/variable-in-markdown.tsx": { + "react/only-export-components": { + "count": 2 + } + }, "web/app/components/workflow/nodes/human-input/types.ts": { "erasable-syntax-only/enums": { "count": 2 @@ -3774,6 +4148,9 @@ } }, "web/app/components/workflow/nodes/if-else/use-single-run-form-params.ts": { + "dify/require-disable-directive-description": { + "count": 3 + }, "typescript/no-explicit-any": { "count": 5 } @@ -3903,6 +4280,11 @@ "count": 5 } }, + "web/app/components/workflow/nodes/list-operator/__tests__/integration.spec.tsx": { + "typescript/no-explicit-any": { + "count": 16 + } + }, "web/app/components/workflow/nodes/list-operator/components/filter-condition.tsx": { "typescript/no-explicit-any": { "count": 1 @@ -4054,6 +4436,11 @@ "count": 9 } }, + "web/app/components/workflow/nodes/question-classifier/__tests__/integration.spec.tsx": { + "typescript/no-explicit-any": { + "count": 15 + } + }, "web/app/components/workflow/nodes/question-classifier/components/class-item.tsx": { "jsx-a11y/no-autofocus": { "count": 1 @@ -4173,7 +4560,20 @@ "count": 1 } }, + "web/app/components/workflow/nodes/trigger-schedule/__tests__/panel.spec.tsx": { + "typescript/no-explicit-any": { + "count": 15 + } + }, + "web/app/components/workflow/nodes/trigger-schedule/components/__tests__/integration.spec.tsx": { + "typescript/no-explicit-any": { + "count": 2 + } + }, "web/app/components/workflow/nodes/trigger-schedule/default.ts": { + "dify/require-disable-directive-description": { + "count": 1 + }, "regexp/no-unused-capturing-group": { "count": 2 }, @@ -4181,6 +4581,11 @@ "count": 4 } }, + "web/app/components/workflow/nodes/trigger-webhook/components/generic-table.tsx": { + "dify/require-disable-directive-description": { + "count": 1 + } + }, "web/app/components/workflow/nodes/trigger-webhook/components/parameter-table.tsx": { "typescript/no-non-null-asserted-optional-chain": { "count": 1 @@ -4368,6 +4773,36 @@ "count": 1 } }, + "web/app/components/workflow/panel/debug-and-preview/__tests__/hooks/handle-resume.spec.ts": { + "typescript/no-explicit-any": { + "count": 69 + } + }, + "web/app/components/workflow/panel/debug-and-preview/__tests__/hooks/handle-send.spec.ts": { + "typescript/no-explicit-any": { + "count": 16 + } + }, + "web/app/components/workflow/panel/debug-and-preview/__tests__/hooks/handle-stop-restart.spec.ts": { + "typescript/no-explicit-any": { + "count": 15 + } + }, + "web/app/components/workflow/panel/debug-and-preview/__tests__/hooks/misc.spec.ts": { + "typescript/no-explicit-any": { + "count": 17 + } + }, + "web/app/components/workflow/panel/debug-and-preview/__tests__/hooks/opening-statement.spec.ts": { + "typescript/no-explicit-any": { + "count": 5 + } + }, + "web/app/components/workflow/panel/debug-and-preview/__tests__/hooks/sse-callbacks.spec.ts": { + "typescript/no-explicit-any": { + "count": 34 + } + }, "web/app/components/workflow/panel/debug-and-preview/chat-wrapper.tsx": { "typescript/no-explicit-any": { "count": 5 @@ -4396,6 +4831,11 @@ "count": 2 } }, + "web/app/components/workflow/panel/env-panel/index.tsx": { + "dify/require-disable-directive-description": { + "count": 1 + } + }, "web/app/components/workflow/panel/env-panel/variable-modal.tsx": { "eslint-react/set-state-in-effect": { "count": 4 @@ -4482,6 +4922,9 @@ } }, "web/app/components/workflow/run/iteration-log/iteration-log-trigger.tsx": { + "dify/require-disable-directive-description": { + "count": 2 + }, "unicorn/prefer-number-properties": { "count": 1 } @@ -4731,11 +5174,24 @@ "count": 5 } }, + "web/app/components/workflow/workflow-generator/__tests__/example-prompts.spec.tsx": { + "dify/require-disable-directive-description": { + "count": 1 + } + }, "web/app/components/workflow/workflow-generator/example-prompts.tsx": { + "dify/require-disable-directive-description": { + "count": 1 + }, "no-useless-return": { "count": 1 } }, + "web/app/components/workflow/workflow-generator/index.tsx": { + "dify/require-disable-directive-description": { + "count": 2 + } + }, "web/app/components/workflow/workflow-preview/components/nodes/constants.ts": { "typescript/no-explicit-any": { "count": 1 @@ -4747,6 +5203,9 @@ } }, "web/app/device/page.tsx": { + "dify/require-disable-directive-description": { + "count": 5 + }, "jsx-a11y/no-autofocus": { "count": 1 } @@ -4799,11 +5258,21 @@ "count": 1 } }, + "web/features/account-profile/client.ts": { + "dify/require-disable-directive-description": { + "count": 1 + } + }, "web/features/agent-v2/agent-detail/configure/components/orchestrate/files/__tests__/index.spec.tsx": { "@tanstack/query/prefer-query-options": { "count": 1 } }, + "web/features/agent-v2/agent-detail/configure/components/preview/chat-session.tsx": { + "dify/require-disable-directive-description": { + "count": 1 + } + }, "web/features/agent-v2/agent-detail/configure/components/preview/working-directory-panel.tsx": { "@tanstack/query/prefer-query-options": { "count": 4 @@ -4824,9 +5293,22 @@ "count": 1 } }, + "web/features/skills/client.ts": { + "dify/require-disable-directive-description": { + "count": 2 + } + }, + "web/features/skills/detail/builder-panel.tsx": { + "eslint-react/set-state-in-effect": { + "count": 1 + } + }, "web/features/skills/detail/file-editor.tsx": { "@tanstack/query/prefer-query-options": { "count": 2 + }, + "eslint-react/set-state-in-effect": { + "count": 24 } }, "web/features/skills/detail/file-tree-items.tsx": { @@ -4834,6 +5316,11 @@ "count": 2 } }, + "web/features/skills/detail/page.tsx": { + "eslint-react/set-state-in-effect": { + "count": 4 + } + }, "web/features/tag-management/components/tag-item-editor.tsx": { "jsx-a11y/no-autofocus": { "count": 1 @@ -4919,11 +5406,31 @@ "count": 1 } }, + "web/proxy.ts": { + "dify/require-disable-directive-description": { + "count": 2 + } + }, + "web/scripts/analyze-i18n-diff.ts": { + "dify/require-disable-directive-description": { + "count": 1 + } + }, + "web/scripts/gen-doc-paths.ts": { + "dify/require-disable-directive-description": { + "count": 3 + } + }, "web/service/__tests__/base.spec.ts": { "no-restricted-imports": { "count": 1 } }, + "web/service/__tests__/sse-generator-post.spec.ts": { + "dify/require-disable-directive-description": { + "count": 1 + } + }, "web/service/__tests__/use-pipeline.spec.tsx": { "no-restricted-imports": { "count": 1 @@ -4987,6 +5494,11 @@ "count": 3 } }, + "web/service/base.spec.ts": { + "dify/require-disable-directive-description": { + "count": 1 + } + }, "web/service/base.ts": { "no-restricted-imports": { "count": 2 @@ -5024,6 +5536,11 @@ "count": 6 } }, + "web/service/fetch.spec.ts": { + "dify/require-disable-directive-description": { + "count": 1 + } + }, "web/service/fetch.ts": { "no-restricted-imports": { "count": 1 @@ -5131,6 +5648,9 @@ "web/service/use-common.ts": { "@tanstack/query/prefer-query-options": { "count": 10 + }, + "dify/require-disable-directive-description": { + "count": 1 } }, "web/service/use-datasource.ts": { @@ -5200,6 +5720,9 @@ "web/service/use-plugins.ts": { "@tanstack/query/prefer-query-options": { "count": 13 + }, + "dify/require-disable-directive-description": { + "count": 1 } }, "web/service/use-share.ts": { @@ -5267,6 +5790,11 @@ "count": 1 } }, + "web/service/workflow-generator.ts": { + "dify/require-disable-directive-description": { + "count": 1 + } + }, "web/service/workflow.ts": { "no-restricted-imports": { "count": 1 @@ -5315,6 +5843,11 @@ "count": 2 } }, + "web/utils/index.spec.ts": { + "dify/require-disable-directive-description": { + "count": 1 + } + }, "web/utils/index.ts": { "typescript/no-explicit-any": { "count": 3 diff --git a/web/app/components/app/annotation/__tests__/index.spec.tsx b/web/app/components/app/annotation/__tests__/index.spec.tsx index 2f69bf83d7a..865196a19fb 100644 --- a/web/app/components/app/annotation/__tests__/index.spec.tsx +++ b/web/app/components/app/annotation/__tests__/index.spec.tsx @@ -22,7 +22,6 @@ import Annotation from '../index' import { AnnotationEnableStatus, JobStatus } from '../type' let annotationQuota = { size: 0, limit: 10 } -/* oxlint-disable typescript/no-explicit-any */ vi.mock('@/context/i18n', () => ({ useDocLink: () => (path: string) => `https://docs.example.com${path}`, diff --git a/web/app/components/app/annotation/batch-add-annotation-modal/__tests__/csv-downloader.spec.tsx b/web/app/components/app/annotation/batch-add-annotation-modal/__tests__/csv-downloader.spec.tsx index a98a54e3c8a..d43e14c0fe1 100644 --- a/web/app/components/app/annotation/batch-add-annotation-modal/__tests__/csv-downloader.spec.tsx +++ b/web/app/components/app/annotation/batch-add-annotation-modal/__tests__/csv-downloader.spec.tsx @@ -1,4 +1,3 @@ -/* oxlint-disable typescript/no-explicit-any */ import type { Mock } from 'vite-plus/test' import type { Locale } from '@/i18n-config' import { render, screen } from '@testing-library/react' diff --git a/web/app/components/app/annotation/header-opts/__tests__/index.spec.tsx b/web/app/components/app/annotation/header-opts/__tests__/index.spec.tsx index 6435c5d343f..374affd754e 100644 --- a/web/app/components/app/annotation/header-opts/__tests__/index.spec.tsx +++ b/web/app/components/app/annotation/header-opts/__tests__/index.spec.tsx @@ -10,8 +10,6 @@ import { clearAllAnnotations, fetchExportAnnotationList } from '@/service/annota import { renderWithConsoleQuery as render } from '@/test/console/query-data' import HeaderOptions from '../index' -/* oxlint-disable typescript/no-explicit-any */ - const mockJsonToCSV = vi.fn((_: unknown) => 'csv-content') const mockCSVDownloader = vi.fn(({ children }) => <>{children}>) diff --git a/web/app/components/app/app-publisher/__tests__/features-wrapper.spec.tsx b/web/app/components/app/app-publisher/__tests__/features-wrapper.spec.tsx index bc074e482ea..56ad52cd61d 100644 --- a/web/app/components/app/app-publisher/__tests__/features-wrapper.spec.tsx +++ b/web/app/components/app/app-publisher/__tests__/features-wrapper.spec.tsx @@ -1,4 +1,3 @@ -/* oxlint-disable typescript/no-explicit-any */ import { fireEvent, render, screen, waitFor, within } from '@testing-library/react' import FeaturesWrappedAppPublisher from '../features-wrapper' diff --git a/web/app/components/app/app-publisher/__tests__/index.spec.tsx b/web/app/components/app/app-publisher/__tests__/index.spec.tsx index e174dc0674e..8b1ec64b24a 100644 --- a/web/app/components/app/app-publisher/__tests__/index.spec.tsx +++ b/web/app/components/app/app-publisher/__tests__/index.spec.tsx @@ -1,4 +1,3 @@ -/* oxlint-disable typescript/no-explicit-any */ import { EnvironmentStatus, RuntimeState } from '@dify/contracts/enterprise-app-deploy/types.gen' import { act, fireEvent, screen, waitFor } from '@testing-library/react' import userEvent from '@testing-library/user-event' diff --git a/web/app/components/app/app-publisher/__tests__/sections.spec.tsx b/web/app/components/app/app-publisher/__tests__/sections.spec.tsx index 5b970b4d3ac..0dfb4b973eb 100644 --- a/web/app/components/app/app-publisher/__tests__/sections.spec.tsx +++ b/web/app/components/app/app-publisher/__tests__/sections.spec.tsx @@ -1,4 +1,3 @@ -/* oxlint-disable typescript/no-explicit-any */ import type { VersionHistory } from '@/types/workflow' import { fireEvent, screen, within } from '@testing-library/react' import userEvent from '@testing-library/user-event' diff --git a/web/app/components/app/app-publisher/__tests__/version-info-modal.spec.tsx b/web/app/components/app/app-publisher/__tests__/version-info-modal.spec.tsx index 7c697e89f4f..44c99cc2f29 100644 --- a/web/app/components/app/app-publisher/__tests__/version-info-modal.spec.tsx +++ b/web/app/components/app/app-publisher/__tests__/version-info-modal.spec.tsx @@ -1,4 +1,3 @@ -/* oxlint-disable typescript/no-explicit-any */ import { toast } from '@langgenius/dify-ui/toast' import { fireEvent, render, screen } from '@testing-library/react' import VersionInfoModal from '../version-info-modal' diff --git a/web/app/components/app/configuration/config-prompt/__tests__/advanced-prompt-input.spec.tsx b/web/app/components/app/configuration/config-prompt/__tests__/advanced-prompt-input.spec.tsx index 0370c6d5cd6..3824d18d132 100644 --- a/web/app/components/app/configuration/config-prompt/__tests__/advanced-prompt-input.spec.tsx +++ b/web/app/components/app/configuration/config-prompt/__tests__/advanced-prompt-input.spec.tsx @@ -1,4 +1,3 @@ -/* oxlint-disable typescript/no-explicit-any */ import type { ReactNode } from 'react' import type { PromptRole } from '@/models/debug' import { fireEvent, render, screen } from '@testing-library/react' diff --git a/web/app/components/app/configuration/config-prompt/__tests__/index.spec.tsx b/web/app/components/app/configuration/config-prompt/__tests__/index.spec.tsx index dd60eec8add..06ec5c116c6 100644 --- a/web/app/components/app/configuration/config-prompt/__tests__/index.spec.tsx +++ b/web/app/components/app/configuration/config-prompt/__tests__/index.spec.tsx @@ -1,4 +1,3 @@ -/* oxlint-disable typescript/no-explicit-any */ import type { IPromptProps } from '../index' import type { PromptItem, PromptVariable } from '@/models/debug' import { fireEvent, render, screen } from '@testing-library/react' diff --git a/web/app/components/app/configuration/config-prompt/__tests__/simple-prompt-input.spec.tsx b/web/app/components/app/configuration/config-prompt/__tests__/simple-prompt-input.spec.tsx index 3207edb7dae..d1c8359a2d4 100644 --- a/web/app/components/app/configuration/config-prompt/__tests__/simple-prompt-input.spec.tsx +++ b/web/app/components/app/configuration/config-prompt/__tests__/simple-prompt-input.spec.tsx @@ -1,4 +1,3 @@ -/* oxlint-disable typescript/no-explicit-any */ import type { ReactNode } from 'react' import { fireEvent, render, screen } from '@testing-library/react' import { INSERT_VARIABLE_VALUE_BLOCK_COMMAND } from '@/app/components/base/prompt-editor/plugins/variable-block' diff --git a/web/app/components/app/configuration/config-var/config-modal/__tests__/form-fields.spec.tsx b/web/app/components/app/configuration/config-var/config-modal/__tests__/form-fields.spec.tsx index 822629be8f9..759d172a071 100644 --- a/web/app/components/app/configuration/config-var/config-modal/__tests__/form-fields.spec.tsx +++ b/web/app/components/app/configuration/config-var/config-modal/__tests__/form-fields.spec.tsx @@ -1,4 +1,3 @@ -/* oxlint-disable typescript/no-explicit-any */ import type { ReactNode } from 'react' import { fireEvent, render, screen } from '@testing-library/react' import userEvent from '@testing-library/user-event' diff --git a/web/app/components/app/configuration/config-var/config-modal/__tests__/index-logic.spec.tsx b/web/app/components/app/configuration/config-var/config-modal/__tests__/index-logic.spec.tsx index 16f22f59f78..6207d846a05 100644 --- a/web/app/components/app/configuration/config-var/config-modal/__tests__/index-logic.spec.tsx +++ b/web/app/components/app/configuration/config-var/config-modal/__tests__/index-logic.spec.tsx @@ -1,4 +1,3 @@ -/* oxlint-disable typescript/no-explicit-any */ import type { InputVar } from '@/app/components/workflow/types' import type { App, AppSSO } from '@/types/app' import { fireEvent, render, screen, waitFor } from '@testing-library/react' diff --git a/web/app/components/app/configuration/config-var/config-modal/__tests__/type-select.spec.tsx b/web/app/components/app/configuration/config-var/config-modal/__tests__/type-select.spec.tsx index 4aad4aadd31..763630232a1 100644 --- a/web/app/components/app/configuration/config-var/config-modal/__tests__/type-select.spec.tsx +++ b/web/app/components/app/configuration/config-var/config-modal/__tests__/type-select.spec.tsx @@ -1,4 +1,3 @@ -/* oxlint-disable typescript/no-explicit-any */ import { render, screen } from '@testing-library/react' import userEvent from '@testing-library/user-event' import TypeSelector from '../type-select' diff --git a/web/app/components/app/configuration/config-vision/__tests__/index.spec.tsx b/web/app/components/app/configuration/config-vision/__tests__/index.spec.tsx index 3e74f8ade1e..17b6f48391e 100644 --- a/web/app/components/app/configuration/config-vision/__tests__/index.spec.tsx +++ b/web/app/components/app/configuration/config-vision/__tests__/index.spec.tsx @@ -1,4 +1,3 @@ -/* oxlint-disable typescript/no-explicit-any */ import type { Mock } from 'vite-plus/test' import type { FeatureStoreState } from '@/app/components/base/features/store' import type { FileUpload } from '@/app/components/base/features/types' diff --git a/web/app/components/app/configuration/config/__tests__/agent-setting-button.spec.tsx b/web/app/components/app/configuration/config/__tests__/agent-setting-button.spec.tsx index d7cf6e2a1ff..9029de61afa 100644 --- a/web/app/components/app/configuration/config/__tests__/agent-setting-button.spec.tsx +++ b/web/app/components/app/configuration/config/__tests__/agent-setting-button.spec.tsx @@ -1,4 +1,3 @@ -/* oxlint-disable typescript/no-explicit-any */ import type { AgentConfig } from '@/models/debug' import { render, screen } from '@testing-library/react' import userEvent from '@testing-library/user-event' diff --git a/web/app/components/app/configuration/config/__tests__/config-audio.spec.tsx b/web/app/components/app/configuration/config/__tests__/config-audio.spec.tsx index ee232cc129a..3e556763e6f 100644 --- a/web/app/components/app/configuration/config/__tests__/config-audio.spec.tsx +++ b/web/app/components/app/configuration/config/__tests__/config-audio.spec.tsx @@ -1,4 +1,3 @@ -/* oxlint-disable typescript/no-explicit-any */ import type { FeatureStoreState } from '@/app/components/base/features/store' import { render, screen } from '@testing-library/react' import userEvent from '@testing-library/user-event' diff --git a/web/app/components/app/configuration/config/__tests__/config-document.spec.tsx b/web/app/components/app/configuration/config/__tests__/config-document.spec.tsx index 8a8edfa331f..f05d3c61a00 100644 --- a/web/app/components/app/configuration/config/__tests__/config-document.spec.tsx +++ b/web/app/components/app/configuration/config/__tests__/config-document.spec.tsx @@ -1,4 +1,3 @@ -/* oxlint-disable typescript/no-explicit-any */ import type { FeatureStoreState } from '@/app/components/base/features/store' import { render, screen } from '@testing-library/react' import userEvent from '@testing-library/user-event' diff --git a/web/app/components/app/configuration/config/__tests__/index.spec.tsx b/web/app/components/app/configuration/config/__tests__/index.spec.tsx index 72c46d328a2..e3ea581e5bb 100644 --- a/web/app/components/app/configuration/config/__tests__/index.spec.tsx +++ b/web/app/components/app/configuration/config/__tests__/index.spec.tsx @@ -1,4 +1,3 @@ -/* oxlint-disable typescript/no-explicit-any */ import type { ModelConfig, PromptVariable } from '@/models/debug' import type { ToolItem } from '@/types/app' import { render, screen } from '@testing-library/react' diff --git a/web/app/components/app/configuration/config/agent/agent-tools/__tests__/index.spec.tsx b/web/app/components/app/configuration/config/agent/agent-tools/__tests__/index.spec.tsx index 1865f4c3288..861c0f034e6 100644 --- a/web/app/components/app/configuration/config/agent/agent-tools/__tests__/index.spec.tsx +++ b/web/app/components/app/configuration/config/agent/agent-tools/__tests__/index.spec.tsx @@ -1,4 +1,3 @@ -/* oxlint-disable typescript/no-explicit-any */ import type { PropsWithChildren } from 'react' import type { Mock } from 'vite-plus/test' import type SettingBuiltInToolType from '../setting-built-in-tool' diff --git a/web/app/components/app/configuration/config/agent/agent-tools/__tests__/setting-built-in-tool.spec.tsx b/web/app/components/app/configuration/config/agent/agent-tools/__tests__/setting-built-in-tool.spec.tsx index 3077d235da2..a4270cc7f0a 100644 --- a/web/app/components/app/configuration/config/agent/agent-tools/__tests__/setting-built-in-tool.spec.tsx +++ b/web/app/components/app/configuration/config/agent/agent-tools/__tests__/setting-built-in-tool.spec.tsx @@ -1,4 +1,3 @@ -/* oxlint-disable typescript/no-explicit-any */ import type { Tool, ToolParameter } from '@/app/components/tools/types' import { render, screen, waitFor } from '@testing-library/react' import userEvent from '@testing-library/user-event' diff --git a/web/app/components/app/configuration/dataset-config/__tests__/index.spec.tsx b/web/app/components/app/configuration/dataset-config/__tests__/index.spec.tsx index b0225d17563..4ec1f23c33f 100644 --- a/web/app/components/app/configuration/dataset-config/__tests__/index.spec.tsx +++ b/web/app/components/app/configuration/dataset-config/__tests__/index.spec.tsx @@ -1,4 +1,3 @@ -/* oxlint-disable typescript/no-explicit-any */ import type { DataSet } from '@/models/datasets' import type { DatasetConfigs } from '@/models/debug' import { fireEvent, screen, within } from '@testing-library/react' diff --git a/web/app/components/app/configuration/dataset-config/select-dataset/__tests__/index.spec.tsx b/web/app/components/app/configuration/dataset-config/select-dataset/__tests__/index.spec.tsx index 0122aea460c..e0278e5dd19 100644 --- a/web/app/components/app/configuration/dataset-config/select-dataset/__tests__/index.spec.tsx +++ b/web/app/components/app/configuration/dataset-config/select-dataset/__tests__/index.spec.tsx @@ -1,4 +1,3 @@ -/* oxlint-disable typescript/no-explicit-any */ import type { DataSet } from '@/models/datasets' import { act, fireEvent, screen, waitFor } from '@testing-library/react' import * as React from 'react' diff --git a/web/app/components/app/configuration/debug/__tests__/hooks.spec.tsx b/web/app/components/app/configuration/debug/__tests__/hooks.spec.tsx index f0456737ae7..23daded28d6 100644 --- a/web/app/components/app/configuration/debug/__tests__/hooks.spec.tsx +++ b/web/app/components/app/configuration/debug/__tests__/hooks.spec.tsx @@ -1,4 +1,3 @@ -/* oxlint-disable typescript/no-explicit-any */ import { act, renderHook } from '@testing-library/react' import { AgentStrategy } from '@/types/app' import { diff --git a/web/app/components/app/configuration/debug/debug-with-multiple-model/__tests__/index.spec.tsx b/web/app/components/app/configuration/debug/debug-with-multiple-model/__tests__/index.spec.tsx index 319eb5a586a..0020d26f71e 100644 --- a/web/app/components/app/configuration/debug/debug-with-multiple-model/__tests__/index.spec.tsx +++ b/web/app/components/app/configuration/debug/debug-with-multiple-model/__tests__/index.spec.tsx @@ -1,4 +1,3 @@ -/* oxlint-disable typescript/no-explicit-any */ import type { CSSProperties } from 'react' import type { ModelAndParameter } from '../../types' import type { DebugWithMultipleModelContextType } from '../context' diff --git a/web/app/components/app/configuration/debug/debug-with-single-model/__tests__/index.spec.tsx b/web/app/components/app/configuration/debug/debug-with-single-model/__tests__/index.spec.tsx index 7d1b4c89abc..031981b4ff5 100644 --- a/web/app/components/app/configuration/debug/debug-with-single-model/__tests__/index.spec.tsx +++ b/web/app/components/app/configuration/debug/debug-with-single-model/__tests__/index.spec.tsx @@ -1,4 +1,3 @@ -/* oxlint-disable typescript/no-explicit-any */ import type { ReactNode, RefObject } from 'react' import type { DebugWithSingleModelRefType } from '../index' import type { ChatItem } from '@/app/components/base/chat/types' diff --git a/web/app/components/app/configuration/hooks/__tests__/use-advanced-prompt-config.spec.tsx b/web/app/components/app/configuration/hooks/__tests__/use-advanced-prompt-config.spec.tsx index e77d2c91397..36d3d7984d3 100644 --- a/web/app/components/app/configuration/hooks/__tests__/use-advanced-prompt-config.spec.tsx +++ b/web/app/components/app/configuration/hooks/__tests__/use-advanced-prompt-config.spec.tsx @@ -1,4 +1,3 @@ -/* oxlint-disable typescript/no-explicit-any */ import { act, renderHook, waitFor } from '@testing-library/react' import { CONTEXT_PLACEHOLDER_TEXT, diff --git a/web/app/components/app/configuration/hooks/__tests__/use-configuration-utils.spec.ts b/web/app/components/app/configuration/hooks/__tests__/use-configuration-utils.spec.ts index 36e461597fc..d42d1c5e464 100644 --- a/web/app/components/app/configuration/hooks/__tests__/use-configuration-utils.spec.ts +++ b/web/app/components/app/configuration/hooks/__tests__/use-configuration-utils.spec.ts @@ -1,4 +1,3 @@ -/* oxlint-disable typescript/no-explicit-any */ import type { VisionSettings } from '@/types/app' import { DEFAULT_CHAT_PROMPT_CONFIG, DEFAULT_COMPLETION_PROMPT_CONFIG } from '@/config' import { withSelectorKey } from '@/test/i18n-mock' diff --git a/web/app/components/app/configuration/hooks/__tests__/use-configuration.spec.tsx b/web/app/components/app/configuration/hooks/__tests__/use-configuration.spec.tsx index e07696ba26b..de28eeb197d 100644 --- a/web/app/components/app/configuration/hooks/__tests__/use-configuration.spec.tsx +++ b/web/app/components/app/configuration/hooks/__tests__/use-configuration.spec.tsx @@ -1,4 +1,3 @@ -/* oxlint-disable typescript/no-explicit-any */ import { act, waitFor } from '@testing-library/react' import { updateAppModelConfig } from '@/service/apps' import { consoleQuery } from '@/service/console' diff --git a/web/app/components/app/configuration/prompt-value-panel/__tests__/index.spec.tsx b/web/app/components/app/configuration/prompt-value-panel/__tests__/index.spec.tsx index 79f1a21e7ad..5aebfc7ac2f 100644 --- a/web/app/components/app/configuration/prompt-value-panel/__tests__/index.spec.tsx +++ b/web/app/components/app/configuration/prompt-value-panel/__tests__/index.spec.tsx @@ -1,4 +1,3 @@ -/* oxlint-disable typescript/no-explicit-any */ import type { IPromptValuePanelProps } from '../index' import { fireEvent, render, screen, waitFor } from '@testing-library/react' import userEvent from '@testing-library/user-event' diff --git a/web/app/components/app/create-from-dsl-modal/__tests__/index.spec.tsx b/web/app/components/app/create-from-dsl-modal/__tests__/index.spec.tsx index 91c86dd84d9..0707531b0b7 100644 --- a/web/app/components/app/create-from-dsl-modal/__tests__/index.spec.tsx +++ b/web/app/components/app/create-from-dsl-modal/__tests__/index.spec.tsx @@ -7,8 +7,6 @@ import { AppModeEnum } from '@/types/app' import CreateFromDSLModal from '../index' import { CreateFromDSLModalTab } from '../types' -/* oxlint-disable typescript/no-explicit-any */ - const mockPush = vi.fn() const mockImportDSL = vi.fn() const mockImportDSLConfirm = vi.fn() diff --git a/web/app/components/app/log/__tests__/index.spec.tsx b/web/app/components/app/log/__tests__/index.spec.tsx index 3bdb621fdbe..292818a2f75 100644 --- a/web/app/components/app/log/__tests__/index.spec.tsx +++ b/web/app/components/app/log/__tests__/index.spec.tsx @@ -1,4 +1,3 @@ -/* oxlint-disable typescript/no-explicit-any */ import type { CloudSandboxPlanState } from '../cloud-sandbox-retention' import { fireEvent, render, screen } from '@testing-library/react' import userEvent from '@testing-library/user-event' diff --git a/web/app/components/app/log/__tests__/list-utils.spec.ts b/web/app/components/app/log/__tests__/list-utils.spec.ts index 47f112cdf86..837b05db001 100644 --- a/web/app/components/app/log/__tests__/list-utils.spec.ts +++ b/web/app/components/app/log/__tests__/list-utils.spec.ts @@ -1,4 +1,3 @@ -/* oxlint-disable typescript/no-explicit-any */ import type { IChatItem } from '@/app/components/base/chat/chat/type' import { applyAnnotationAdded, diff --git a/web/app/components/app/log/__tests__/list.spec.tsx b/web/app/components/app/log/__tests__/list.spec.tsx index 71bce3db366..4e04298a86d 100644 --- a/web/app/components/app/log/__tests__/list.spec.tsx +++ b/web/app/components/app/log/__tests__/list.spec.tsx @@ -1,4 +1,3 @@ -/* oxlint-disable typescript/no-explicit-any */ import type { ReactNode } from 'react' import { act, fireEvent, screen, waitFor } from '@testing-library/react' import { createAccountProfileQueryClient } from '@/test/console/account-profile' diff --git a/web/app/components/app/overview/__tests__/app-chart-utils.spec.ts b/web/app/components/app/overview/__tests__/app-chart-utils.spec.ts index faf25834099..f48e2ebbcc9 100644 --- a/web/app/components/app/overview/__tests__/app-chart-utils.spec.ts +++ b/web/app/components/app/overview/__tests__/app-chart-utils.spec.ts @@ -1,4 +1,3 @@ -/* oxlint-disable typescript/no-explicit-any */ import { buildChartOptions, getChartValueField, diff --git a/web/app/components/app/overview/app-chart.tsx b/web/app/components/app/overview/app-chart.tsx index 17dad0ef55e..fea3a1fc7e1 100644 --- a/web/app/components/app/overview/app-chart.tsx +++ b/web/app/components/app/overview/app-chart.tsx @@ -1,4 +1,3 @@ -/* oxlint-disable react/only-export-components */ 'use client' import type { QueryKey, UseQueryOptions } from '@tanstack/react-query' import type { Dayjs } from 'dayjs' diff --git a/web/app/components/app/text-generate/item/__tests__/index.spec.tsx b/web/app/components/app/text-generate/item/__tests__/index.spec.tsx index 974e97a1cb6..8b1f7b35110 100644 --- a/web/app/components/app/text-generate/item/__tests__/index.spec.tsx +++ b/web/app/components/app/text-generate/item/__tests__/index.spec.tsx @@ -1,4 +1,3 @@ -/* oxlint-disable typescript/no-explicit-any */ import { act, fireEvent, render, screen, waitFor } from '@testing-library/react' import { AppSourceType } from '@/service/share' import GenerationItem from '../index' diff --git a/web/app/components/app/text-generate/item/__tests__/result-tab.spec.tsx b/web/app/components/app/text-generate/item/__tests__/result-tab.spec.tsx index 422739ad1cc..194369957e8 100644 --- a/web/app/components/app/text-generate/item/__tests__/result-tab.spec.tsx +++ b/web/app/components/app/text-generate/item/__tests__/result-tab.spec.tsx @@ -1,4 +1,3 @@ -/* oxlint-disable typescript/no-explicit-any */ import { render, screen } from '@testing-library/react' import ResultTab from '../result-tab' diff --git a/web/app/components/app/text-generate/item/__tests__/utils.spec.ts b/web/app/components/app/text-generate/item/__tests__/utils.spec.ts index 20fdec280e4..dc1de18e455 100644 --- a/web/app/components/app/text-generate/item/__tests__/utils.spec.ts +++ b/web/app/components/app/text-generate/item/__tests__/utils.spec.ts @@ -1,4 +1,3 @@ -/* oxlint-disable typescript/no-explicit-any */ import { buildPromptLogItem, getCopyContent, diff --git a/web/app/components/app/text-generate/item/__tests__/workflow-body.spec.tsx b/web/app/components/app/text-generate/item/__tests__/workflow-body.spec.tsx index edfb56d45af..352aa717a6a 100644 --- a/web/app/components/app/text-generate/item/__tests__/workflow-body.spec.tsx +++ b/web/app/components/app/text-generate/item/__tests__/workflow-body.spec.tsx @@ -1,4 +1,3 @@ -/* oxlint-disable typescript/no-explicit-any */ import { fireEvent, render, screen } from '@testing-library/react' import WorkflowBody from '../workflow-body' diff --git a/web/app/components/app/workflow-log/__tests__/list.spec.tsx b/web/app/components/app/workflow-log/__tests__/list.spec.tsx index f30de8edbe6..3f5bc414ea0 100644 --- a/web/app/components/app/workflow-log/__tests__/list.spec.tsx +++ b/web/app/components/app/workflow-log/__tests__/list.spec.tsx @@ -1,4 +1,3 @@ -/* oxlint-disable typescript/no-explicit-any */ /** * WorkflowAppLogList Component Tests * diff --git a/web/app/components/base/carousel/index.tsx b/web/app/components/base/carousel/index.tsx index 765c1fd4f9a..36d2fc80269 100644 --- a/web/app/components/base/carousel/index.tsx +++ b/web/app/components/base/carousel/index.tsx @@ -1,4 +1,3 @@ -/* oxlint-disable eslint-react/set-state-in-effect */ import type { UseEmblaCarouselType } from 'embla-carousel-react' import { cn } from '@langgenius/dify-ui/cn' import Autoplay from 'embla-carousel-autoplay' diff --git a/web/app/components/base/chat/embedded-chatbot/hooks.tsx b/web/app/components/base/chat/embedded-chatbot/hooks.tsx index 6f5a3a32fda..52ef87d6ac3 100644 --- a/web/app/components/base/chat/embedded-chatbot/hooks.tsx +++ b/web/app/components/base/chat/embedded-chatbot/hooks.tsx @@ -1,5 +1,4 @@ import type { ChatConfig, ChatItem, OnFeedback } from '../types' -/* oxlint-disable typescript/no-explicit-any */ import type { InputValueTypes } from '@/app/components/share/text-generation/types' import type { Locale } from '@/i18n-config' import type { AppData, ConversationItem } from '@/models/share' diff --git a/web/app/components/base/chat/embedded-chatbot/inputs-form/__tests__/content.spec.tsx b/web/app/components/base/chat/embedded-chatbot/inputs-form/__tests__/content.spec.tsx index 3ab5f72c100..a1317158c63 100644 --- a/web/app/components/base/chat/embedded-chatbot/inputs-form/__tests__/content.spec.tsx +++ b/web/app/components/base/chat/embedded-chatbot/inputs-form/__tests__/content.spec.tsx @@ -1,4 +1,3 @@ -/* oxlint-disable typescript/no-explicit-any */ import { fireEvent, render, screen } from '@testing-library/react' import userEvent from '@testing-library/user-event' import { InputVarType } from '@/app/components/workflow/types' diff --git a/web/app/components/base/chat/embedded-chatbot/inputs-form/__tests__/index.spec.tsx b/web/app/components/base/chat/embedded-chatbot/inputs-form/__tests__/index.spec.tsx index a2d9b930f4f..053f1f43cd0 100644 --- a/web/app/components/base/chat/embedded-chatbot/inputs-form/__tests__/index.spec.tsx +++ b/web/app/components/base/chat/embedded-chatbot/inputs-form/__tests__/index.spec.tsx @@ -1,4 +1,3 @@ -/* oxlint-disable typescript/no-explicit-any */ import { render, screen } from '@testing-library/react' import userEvent from '@testing-library/user-event' import { AppSourceType } from '@/service/share' diff --git a/web/app/components/explore/try-app/index.tsx b/web/app/components/explore/try-app/index.tsx index aa98251cb0a..956350e293d 100644 --- a/web/app/components/explore/try-app/index.tsx +++ b/web/app/components/explore/try-app/index.tsx @@ -1,4 +1,3 @@ -/* eslint-disable style/multiline-ternary */ 'use client' import type { RecommendedAppResponse } from '@dify/contracts/api/console/explore/types.gen' import { Button } from '@langgenius/dify-ui/button' diff --git a/web/app/components/explore/try-app/preview/basic-app-preview.tsx b/web/app/components/explore/try-app/preview/basic-app-preview.tsx index f9d4663c61a..b300fea050b 100644 --- a/web/app/components/explore/try-app/preview/basic-app-preview.tsx +++ b/web/app/components/explore/try-app/preview/basic-app-preview.tsx @@ -1,4 +1,3 @@ -/* oxlint-disable typescript/no-explicit-any */ 'use client' import type { FC } from 'react' import type { Features as FeaturesData, FileUpload } from '@/app/components/base/features/types' diff --git a/web/app/components/plugins/marketplace/list/carousel.tsx b/web/app/components/plugins/marketplace/list/carousel.tsx index 5d4ffc9542f..819e3e0bc1f 100644 --- a/web/app/components/plugins/marketplace/list/carousel.tsx +++ b/web/app/components/plugins/marketplace/list/carousel.tsx @@ -1,6 +1,5 @@ 'use client' -/* oxlint-disable eslint-react/set-state-in-effect */ import type { ReactNode } from 'react' import { cn } from '@langgenius/dify-ui/cn' import Autoplay from 'embla-carousel-autoplay' diff --git a/web/app/components/step-by-step-tour/coachmark.tsx b/web/app/components/step-by-step-tour/coachmark.tsx index b45546adeb8..536d716a7ef 100644 --- a/web/app/components/step-by-step-tour/coachmark.tsx +++ b/web/app/components/step-by-step-tour/coachmark.tsx @@ -278,7 +278,7 @@ export function StepByStepTourCoachmark({ {stableOverlay?.interactionPolicy === 'target-only' ? ( targetBlockerStyles.map((style, index) => (